From 9196c88ed444de9991b40758303fd448a5988fe5 Mon Sep 17 00:00:00 2001 From: Alexander Hess Date: Sat, 9 Jan 2021 17:47:45 +0100 Subject: [PATCH] Remove pylint from the project --- docs/conf.py | 2 +- noxfile.py | 17 +--- poetry.lock | 82 +------------------ pyproject.toml | 1 - setup.cfg | 39 --------- src/urban_meal_delivery/db/addresses.py | 3 +- src/urban_meal_delivery/db/cities.py | 4 +- src/urban_meal_delivery/db/utils/locations.py | 2 - tests/console/test_main.py | 4 - tests/db/fake_data/factories.py | 4 +- tests/db/test_addresses.py | 1 - tests/db/test_addresses_pixels.py | 1 - tests/db/test_cities.py | 1 - tests/db/test_couriers.py | 1 - tests/db/test_customer.py | 1 - tests/db/test_forecasts.py | 1 - tests/db/test_grids.py | 1 - tests/db/test_orders.py | 3 - tests/db/test_pixels.py | 1 - tests/db/test_restaurants.py | 1 - tests/db/utils/test_locations.py | 2 - .../forecasts/timify/test_aggregate_orders.py | 1 - .../forecasts/timify/test_make_time_series.py | 3 +- tests/forecasts/timify/test_order_history.py | 1 - tests/test_version.py | 4 - 25 files changed, 9 insertions(+), 172 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 2ab87a7..40ef34b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -5,7 +5,7 @@ import urban_meal_delivery as umd project = umd.__pkg_name__ author = umd.__author__ -copyright = f'2020, {author}' # pylint:disable=redefined-builtin +copyright = f'2020, {author}' version = release = umd.__version__ extensions = [ diff --git a/noxfile.py b/noxfile.py index 0567f22..617f4c6 100644 --- a/noxfile.py +++ b/noxfile.py @@ -17,7 +17,7 @@ as unified tasks to assure the quality of the source code: that are then interpreted as the paths the formatters and linters work on recursively -- "lint" (flake8, mypy, pylint): same as "format" +- "lint" (flake8, mypy): same as "format" - "test" (pytest, xdoctest): @@ -141,7 +141,7 @@ def format_(session): @nox.session(python=PYTHON) def lint(session): - """Lint source files with flake8, mypy, and pylint. + """Lint source files with flake8, and mypy. If no extra arguments are provided, all source files are linted. Otherwise, they are interpreted as paths the linters work on recursively. @@ -158,7 +158,6 @@ def lint(session): 'flake8-expression-complexity', 'flake8-pytest-style', 'mypy', - 'pylint', 'wemake-python-styleguide', ) @@ -182,18 +181,6 @@ def lint(session): else: session.log('No paths to be checked with mypy') - # Ignore errors where pylint cannot import a third-party package due its - # being run in an isolated environment. For the same reason, pylint is - # also not able to determine the correct order of imports. - # One way to fix this is to install all develop dependencies in this nox - # session, which we do not do. The whole point of static linting tools is - # to not rely on any package be importable at runtime. Instead, these - # imports are validated implicitly when the test suite is run. - session.run('pylint', '--version') - session.run( - 'pylint', '--disable=import-error', '--disable=wrong-import-order', *locations, - ) - @nox.session(python=PYTHON) def test(session): diff --git a/poetry.lock b/poetry.lock index b56f2af..7cf1b5a 100644 --- a/poetry.lock +++ b/poetry.lock @@ -83,19 +83,6 @@ python-versions = ">=3.6.1" [package.extras] typed = ["typed-ast"] -[[package]] -name = "astroid" -version = "2.4.2" -description = "An abstract syntax tree for Python with inference support." -category = "dev" -optional = false -python-versions = ">=3.5" - -[package.dependencies] -lazy-object-proxy = ">=1.4.0,<1.5.0" -six = ">=1.12,<2.0" -wrapt = ">=1.11,<2.0" - [[package]] name = "async-generator" version = "1.10" @@ -885,14 +872,6 @@ requests = "*" [package.extras] test = ["pytest", "requests"] -[[package]] -name = "lazy-object-proxy" -version = "1.4.3" -description = "A fast and thorough lazy object proxy." -category = "dev" -optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" - [[package]] name = "mako" version = "1.1.3" @@ -1312,21 +1291,6 @@ category = "main" optional = false python-versions = ">=3.5" -[[package]] -name = "pylint" -version = "2.6.0" -description = "python code static checker" -category = "dev" -optional = false -python-versions = ">=3.5.*" - -[package.dependencies] -astroid = ">=2.4.0,<=2.5" -colorama = {version = "*", markers = "sys_platform == \"win32\""} -isort = ">=4.2.5,<6" -mccabe = ">=0.6,<0.7" -toml = ">=0.7.1" - [[package]] name = "pyparsing" version = "2.4.7" @@ -1869,14 +1833,6 @@ pep8-naming = ">=0.9.1,<0.10.0" pygments = ">=2.4,<3.0" typing_extensions = ">=3.6,<4.0" -[[package]] -name = "wrapt" -version = "1.12.1" -description = "Module for decorators, wrappers and monkey patching." -category = "dev" -optional = false -python-versions = "*" - [[package]] name = "xdoctest" version = "0.13.0" @@ -1896,12 +1852,12 @@ optional = ["pygments", "colorama"] tests = ["pytest", "pytest-cov", "codecov", "scikit-build", "cmake", "ninja", "pybind11"] [extras] -research = ["jupyterlab", "nb_black", "numpy", "pandas", "pytz"] +research = ["jupyterlab", "nb_black", "numpy", "pytz"] [metadata] lock-version = "1.1" python-versions = "^3.8" -content-hash = "b2671b1aecf282fa648190111c9ca79e7a40b13d0915f59a4f65e7986e737fb5" +content-hash = "5c0a4b37e73e0ed607cc2c46a9178f7b8e2a8364856a408a80f955a3c8b861a1" [metadata.files] alabaster = [ @@ -1952,10 +1908,6 @@ astpretty = [ {file = "astpretty-2.0.0-py2.py3-none-any.whl", hash = "sha256:7f27633ed885033da8b58666e7079ffff7e8e01869ec1aa66484cb5185ea3aa4"}, {file = "astpretty-2.0.0.tar.gz", hash = "sha256:e4724bfd753636ba4a84384702e9796e5356969f40af2596d846ce64addde086"}, ] -astroid = [ - {file = "astroid-2.4.2-py3-none-any.whl", hash = "sha256:bc58d83eb610252fd8de6363e39d4f1d0619c894b0ed24603b881c02e64c7386"}, - {file = "astroid-2.4.2.tar.gz", hash = "sha256:2f4078c2a41bf377eea06d71c9d2ba4eb8f6b1af2135bec27bbbb7d8f12bb703"}, -] async-generator = [ {file = "async_generator-1.10-py3-none-any.whl", hash = "sha256:01c7bf666359b4967d2cda0000cc2e4af16a0ae098cbffcb8472fb9e8ad6585b"}, {file = "async_generator-1.10.tar.gz", hash = "sha256:6ebb3d106c12920aaae42ccb6f787ef5eefdcdd166ea3d628fa8476abe712144"}, @@ -2282,29 +2234,6 @@ jupyterlab-server = [ {file = "jupyterlab_server-1.2.0-py3-none-any.whl", hash = "sha256:55d256077bf13e5bc9e8fbd5aac51bef82f6315111cec6b712b9a5ededbba924"}, {file = "jupyterlab_server-1.2.0.tar.gz", hash = "sha256:5431d9dde96659364b7cc877693d5d21e7b80cea7ae3959ecc2b87518e5f5d8c"}, ] -lazy-object-proxy = [ - {file = "lazy-object-proxy-1.4.3.tar.gz", hash = "sha256:f3900e8a5de27447acbf900b4750b0ddfd7ec1ea7fbaf11dfa911141bc522af0"}, - {file = "lazy_object_proxy-1.4.3-cp27-cp27m-macosx_10_13_x86_64.whl", hash = "sha256:a2238e9d1bb71a56cd710611a1614d1194dc10a175c1e08d75e1a7bcc250d442"}, - {file = "lazy_object_proxy-1.4.3-cp27-cp27m-win32.whl", hash = "sha256:efa1909120ce98bbb3777e8b6f92237f5d5c8ea6758efea36a473e1d38f7d3e4"}, - {file = "lazy_object_proxy-1.4.3-cp27-cp27m-win_amd64.whl", hash = "sha256:4677f594e474c91da97f489fea5b7daa17b5517190899cf213697e48d3902f5a"}, - {file = "lazy_object_proxy-1.4.3-cp27-cp27mu-manylinux1_x86_64.whl", hash = "sha256:0c4b206227a8097f05c4dbdd323c50edf81f15db3b8dc064d08c62d37e1a504d"}, - {file = "lazy_object_proxy-1.4.3-cp34-cp34m-manylinux1_x86_64.whl", hash = "sha256:d945239a5639b3ff35b70a88c5f2f491913eb94871780ebfabb2568bd58afc5a"}, - {file = "lazy_object_proxy-1.4.3-cp34-cp34m-win32.whl", hash = "sha256:9651375199045a358eb6741df3e02a651e0330be090b3bc79f6d0de31a80ec3e"}, - {file = "lazy_object_proxy-1.4.3-cp34-cp34m-win_amd64.whl", hash = "sha256:eba7011090323c1dadf18b3b689845fd96a61ba0a1dfbd7f24b921398affc357"}, - {file = "lazy_object_proxy-1.4.3-cp35-cp35m-manylinux1_x86_64.whl", hash = "sha256:48dab84ebd4831077b150572aec802f303117c8cc5c871e182447281ebf3ac50"}, - {file = "lazy_object_proxy-1.4.3-cp35-cp35m-win32.whl", hash = "sha256:ca0a928a3ddbc5725be2dd1cf895ec0a254798915fb3a36af0964a0a4149e3db"}, - {file = "lazy_object_proxy-1.4.3-cp35-cp35m-win_amd64.whl", hash = "sha256:194d092e6f246b906e8f70884e620e459fc54db3259e60cf69a4d66c3fda3449"}, - {file = "lazy_object_proxy-1.4.3-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:97bb5884f6f1cdce0099f86b907aa41c970c3c672ac8b9c8352789e103cf3156"}, - {file = "lazy_object_proxy-1.4.3-cp36-cp36m-win32.whl", hash = "sha256:cb2c7c57005a6804ab66f106ceb8482da55f5314b7fcb06551db1edae4ad1531"}, - {file = "lazy_object_proxy-1.4.3-cp36-cp36m-win_amd64.whl", hash = "sha256:8d859b89baf8ef7f8bc6b00aa20316483d67f0b1cbf422f5b4dc56701c8f2ffb"}, - {file = "lazy_object_proxy-1.4.3-cp37-cp37m-macosx_10_13_x86_64.whl", hash = "sha256:1be7e4c9f96948003609aa6c974ae59830a6baecc5376c25c92d7d697e684c08"}, - {file = "lazy_object_proxy-1.4.3-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:d74bb8693bf9cf75ac3b47a54d716bbb1a92648d5f781fc799347cfc95952383"}, - {file = "lazy_object_proxy-1.4.3-cp37-cp37m-win32.whl", hash = "sha256:9b15f3f4c0f35727d3a0fba4b770b3c4ebbb1fa907dbcc046a1d2799f3edd142"}, - {file = "lazy_object_proxy-1.4.3-cp37-cp37m-win_amd64.whl", hash = "sha256:9254f4358b9b541e3441b007a0ea0764b9d056afdeafc1a5569eee1cc6c1b9ea"}, - {file = "lazy_object_proxy-1.4.3-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:a6ae12d08c0bf9909ce12385803a543bfe99b95fe01e752536a60af2b7797c62"}, - {file = "lazy_object_proxy-1.4.3-cp38-cp38-win32.whl", hash = "sha256:5541cada25cd173702dbd99f8e22434105456314462326f06dba3e180f203dfd"}, - {file = "lazy_object_proxy-1.4.3-cp38-cp38-win_amd64.whl", hash = "sha256:59f79fef100b09564bc2df42ea2d8d21a64fdcda64979c0fa3db7bdaabaf6239"}, -] mako = [ {file = "Mako-1.1.3-py2.py3-none-any.whl", hash = "sha256:93729a258e4ff0747c876bd9e20df1b9758028946e976324ccd2d68245c7b6a9"}, {file = "Mako-1.1.3.tar.gz", hash = "sha256:8195c8c1400ceb53496064314c6736719c6f25e7479cd24c77be3d9361cddc27"}, @@ -2557,10 +2486,6 @@ pygments = [ {file = "Pygments-2.7.3-py3-none-any.whl", hash = "sha256:f275b6c0909e5dafd2d6269a656aa90fa58ebf4a74f8fcf9053195d226b24a08"}, {file = "Pygments-2.7.3.tar.gz", hash = "sha256:ccf3acacf3782cbed4a989426012f1c535c9a90d3a7fc3f16d231b9372d2b716"}, ] -pylint = [ - {file = "pylint-2.6.0-py3-none-any.whl", hash = "sha256:bfe68f020f8a0fece830a22dd4d5dddb4ecc6137db04face4c3420a46a52239f"}, - {file = "pylint-2.6.0.tar.gz", hash = "sha256:bb4a908c9dadbc3aac18860550e870f58e1a02c9f2c204fdf5693d73be061210"}, -] pyparsing = [ {file = "pyparsing-2.4.7-py2.py3-none-any.whl", hash = "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b"}, {file = "pyparsing-2.4.7.tar.gz", hash = "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1"}, @@ -2961,9 +2886,6 @@ wemake-python-styleguide = [ {file = "wemake-python-styleguide-0.14.1.tar.gz", hash = "sha256:e13dc580fa56b7b548de8da170bccb8ddff2d4ab026ca987db8a9893bf8a7b5b"}, {file = "wemake_python_styleguide-0.14.1-py3-none-any.whl", hash = "sha256:73a501e0547275287a2b926515c000cc25026a8bceb9dcc1bf73ef85a223a3c6"}, ] -wrapt = [ - {file = "wrapt-1.12.1.tar.gz", hash = "sha256:b62ffa81fb85f4332a4f609cab4ac40709470da05643a082ec1eb88e6d9b97d7"}, -] xdoctest = [ {file = "xdoctest-0.13.0-py2.py3-none-any.whl", hash = "sha256:de861fd5230a46bd26c054b4981169dd963f813768cb62b62e104e4d2644ac94"}, {file = "xdoctest-0.13.0.tar.gz", hash = "sha256:4f113a430076561a9d7f31af65b5d5acda62ee06b05cb6894264cb9efb8196ac"}, diff --git a/pyproject.toml b/pyproject.toml index 573d282..3545e95 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -68,7 +68,6 @@ flake8-black = "^0.2.1" flake8-expression-complexity = "^0.0.8" flake8-pytest-style = "^1.2.2" mypy = "^0.782" -pylint = "^2.5.3" wemake-python-styleguide = "^0.14.1" # flake8 plug-in # Test Suite diff --git a/setup.cfg b/setup.cfg index 76746f3..a7668a8 100644 --- a/setup.cfg +++ b/setup.cfg @@ -261,45 +261,6 @@ ignore_missing_imports = true ignore_missing_imports = true -[pylint.FORMAT] -# Comply with black's style. -max-line-length = 88 - -[pylint.MESSAGES CONTROL] -disable = - # We use TODO's to indicate locations in the source base - # that must be worked on in the near future. - fixme, - # Too many false positives and cannot be disabled within a file. - # Source: https://github.com/PyCQA/pylint/issues/214 - duplicate-code, - # Comply with black's style. - bad-continuation, bad-whitespace, - # ===================== - # flake8 de-duplication - # Source: https://pylint.pycqa.org/en/latest/faq.html#i-am-using-another-popular-linter-alongside-pylint-which-messages-should-i-disable-to-avoid-duplicates - # ===================== - # mccabe - too-many-branches, - # pep8-naming - bad-classmethod-argument, bad-mcs-classmethod-argument, - invalid-name, no-self-argument, - # pycodestyle - bad-indentation, bare-except, line-too-long, missing-final-newline, - multiple-statements, trailing-whitespace, unnecessary-semicolon, unneeded-not, - # pydocstyle - missing-class-docstring, missing-function-docstring, missing-module-docstring, - # pyflakes - undefined-variable, unused-import, unused-variable, - # wemake-python-styleguide - redefined-outer-name, - # A lot of classes in the test suite and `Meta` classes cause complaints. - too-few-public-methods, - -[pylint.REPORTS] -score = no - - [tool:pytest] addopts = --strict-markers diff --git a/src/urban_meal_delivery/db/addresses.py b/src/urban_meal_delivery/db/addresses.py index d97b09c..d86518d 100644 --- a/src/urban_meal_delivery/db/addresses.py +++ b/src/urban_meal_delivery/db/addresses.py @@ -68,8 +68,7 @@ class Address(meta.Base): pixels = orm.relationship('AddressPixelAssociation', back_populates='address') # We do not implement a `.__init__()` method and leave that to SQLAlchemy. - # Instead, we use `hasattr()` to check for uninitialized attributes. - # grep:b1f68d24 pylint:disable=attribute-defined-outside-init + # Instead, we use `hasattr()` to check for uninitialized attributes. grep:b1f68d24 def __repr__(self) -> str: """Non-literal text representation.""" diff --git a/src/urban_meal_delivery/db/cities.py b/src/urban_meal_delivery/db/cities.py index dea5f5f..b2f0cc4 100644 --- a/src/urban_meal_delivery/db/cities.py +++ b/src/urban_meal_delivery/db/cities.py @@ -1,6 +1,5 @@ """Provide the ORM's `City` model.""" - import sqlalchemy as sa from sqlalchemy import orm from sqlalchemy.dialects import postgresql @@ -35,8 +34,7 @@ class City(meta.Base): grids = orm.relationship('Grid', back_populates='city') # We do not implement a `.__init__()` method and leave that to SQLAlchemy. - # Instead, we use `hasattr()` to check for uninitialized attributes. - # grep:d334120e pylint:disable=attribute-defined-outside-init + # Instead, we use `hasattr()` to check for uninitialized attributes. grep:d334120e def __repr__(self) -> str: """Non-literal text representation.""" diff --git a/src/urban_meal_delivery/db/utils/locations.py b/src/urban_meal_delivery/db/utils/locations.py index f789bc3..741edfe 100644 --- a/src/urban_meal_delivery/db/utils/locations.py +++ b/src/urban_meal_delivery/db/utils/locations.py @@ -24,8 +24,6 @@ class Location: https://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system """ - # pylint:disable=too-many-instance-attributes - def __init__(self, latitude: float, longitude: float) -> None: """Create a location from a WGS84-conforming `latitude`-`longitude` pair.""" # The SQLAlchemy columns come as `Decimal`s due to the `DOUBLE_PRECISION`. diff --git a/tests/console/test_main.py b/tests/console/test_main.py index 5a35dab..8832239 100644 --- a/tests/console/test_main.py +++ b/tests/console/test_main.py @@ -18,8 +18,6 @@ class TestShowVersion: " (development)" to the output. """ - # pylint:disable=no-self-use - @pytest.fixture def ctx(self) -> click.Context: """Context around the `main.entry_point` Command.""" @@ -65,8 +63,6 @@ class TestCLIWithoutCommand: Therefore, they are not considered for coverage reporting. """ - # pylint:disable=no-self-use - @pytest.mark.no_cover def test_no_options(self, cli): """Exit with 0 status code and no output if run without options.""" diff --git a/tests/db/fake_data/factories.py b/tests/db/fake_data/factories.py index 50ee950..61c27e9 100644 --- a/tests/db/fake_data/factories.py +++ b/tests/db/fake_data/factories.py @@ -121,8 +121,6 @@ class AdHocOrderFactory(alchemy.SQLAlchemyModelFactory): flags to adapt how the `Order` is created. """ - # pylint:disable=too-many-instance-attributes - class Meta: model = db.Order sqlalchemy_get_or_create = ('id',) @@ -282,7 +280,7 @@ class AdHocOrderFactory(alchemy.SQLAlchemyModelFactory): ) @factory.post_generation - def post( # noqa:C901,WPS23 pylint:disable=unused-argument + def post( # noqa:C901,WPS231 obj, create, extracted, **kwargs, # noqa:B902,N805 ): """Discard timestamps that occur after cancellation.""" diff --git a/tests/db/test_addresses.py b/tests/db/test_addresses.py index 2d45343..0b14ccc 100644 --- a/tests/db/test_addresses.py +++ b/tests/db/test_addresses.py @@ -1,5 +1,4 @@ """Test the ORM's `Address` model.""" -# pylint:disable=no-self-use,protected-access import pytest import sqlalchemy as sqla diff --git a/tests/db/test_addresses_pixels.py b/tests/db/test_addresses_pixels.py index 40e41f8..d5beadd 100644 --- a/tests/db/test_addresses_pixels.py +++ b/tests/db/test_addresses_pixels.py @@ -8,7 +8,6 @@ Implementation notes: code associated with it. Therefore, we test it here as non-e2e tests and do not measure its coverage. """ -# pylint:disable=no-self-use import pytest import sqlalchemy as sqla diff --git a/tests/db/test_cities.py b/tests/db/test_cities.py index 73a0cdb..840b2dd 100644 --- a/tests/db/test_cities.py +++ b/tests/db/test_cities.py @@ -1,5 +1,4 @@ """Test the ORM's `City` model.""" -# pylint:disable=no-self-use import pytest diff --git a/tests/db/test_couriers.py b/tests/db/test_couriers.py index 3db047e..5376cae 100644 --- a/tests/db/test_couriers.py +++ b/tests/db/test_couriers.py @@ -1,5 +1,4 @@ """Test the ORM's `Courier` model.""" -# pylint:disable=no-self-use import pytest from sqlalchemy import exc as sa_exc diff --git a/tests/db/test_customer.py b/tests/db/test_customer.py index 5c74f68..f9ef15a 100644 --- a/tests/db/test_customer.py +++ b/tests/db/test_customer.py @@ -1,5 +1,4 @@ """Test the ORM's `Customer` model.""" -# pylint:disable=no-self-use import pytest diff --git a/tests/db/test_forecasts.py b/tests/db/test_forecasts.py index fa27854..23765db 100644 --- a/tests/db/test_forecasts.py +++ b/tests/db/test_forecasts.py @@ -1,5 +1,4 @@ """Test the ORM's `Forecast` model.""" -# pylint:disable=no-self-use import datetime diff --git a/tests/db/test_grids.py b/tests/db/test_grids.py index 4dd5beb..3d8858d 100644 --- a/tests/db/test_grids.py +++ b/tests/db/test_grids.py @@ -1,5 +1,4 @@ """Test the ORM's `Grid` model.""" -# pylint:disable=no-self-use import pytest import sqlalchemy as sqla diff --git a/tests/db/test_orders.py b/tests/db/test_orders.py index 37eb96a..653038a 100644 --- a/tests/db/test_orders.py +++ b/tests/db/test_orders.py @@ -1,5 +1,4 @@ """Test the ORM's `Order` model.""" -# pylint:disable=no-self-use,protected-access import datetime import random @@ -49,8 +48,6 @@ class TestProperties: and provided by the `make_order` fixture. """ - # pylint:disable=no-self-use,too-many-public-methods - def test_is_ad_hoc(self, order): """Test `Order.scheduled` property.""" assert order.ad_hoc is True diff --git a/tests/db/test_pixels.py b/tests/db/test_pixels.py index 878d6cc..3ebfb26 100644 --- a/tests/db/test_pixels.py +++ b/tests/db/test_pixels.py @@ -1,5 +1,4 @@ """Test the ORM's `Pixel` model.""" -# pylint:disable=no-self-use import pytest import sqlalchemy as sqla diff --git a/tests/db/test_restaurants.py b/tests/db/test_restaurants.py index 536d6f0..a641bce 100644 --- a/tests/db/test_restaurants.py +++ b/tests/db/test_restaurants.py @@ -1,5 +1,4 @@ """Test the ORM's `Restaurant` model.""" -# pylint:disable=no-self-use import pytest import sqlalchemy as sqla diff --git a/tests/db/utils/test_locations.py b/tests/db/utils/test_locations.py index fff43d2..51750e2 100644 --- a/tests/db/utils/test_locations.py +++ b/tests/db/utils/test_locations.py @@ -1,5 +1,4 @@ """Test the `Location` class.""" -# pylint:disable=no-self-use import pytest @@ -97,7 +96,6 @@ class TestSpecialMethods: def test_compare_utm_coordinates_to_themselves(self, location): """Test `Location.__eq__()`.""" - # pylint:disable=comparison-with-itself result = location == location # noqa:WPS312 assert result is True diff --git a/tests/forecasts/timify/test_aggregate_orders.py b/tests/forecasts/timify/test_aggregate_orders.py index 51a6dfa..b3c4206 100644 --- a/tests/forecasts/timify/test_aggregate_orders.py +++ b/tests/forecasts/timify/test_aggregate_orders.py @@ -1,5 +1,4 @@ """Test the `OrderHistory.aggregate_orders()` method.""" -# pylint:disable=no-self-use,unused-argument import datetime diff --git a/tests/forecasts/timify/test_make_time_series.py b/tests/forecasts/timify/test_make_time_series.py index dc4eee9..98e2c34 100644 --- a/tests/forecasts/timify/test_make_time_series.py +++ b/tests/forecasts/timify/test_make_time_series.py @@ -3,7 +3,6 @@ Unless otherwise noted, each `time_step` is 60 minutes long implying 12 time steps per day (i.e., we use `LONG_TIME_STEP` by default). """ -# pylint:disable=no-self-use,unused-argument import datetime @@ -54,7 +53,7 @@ def order_totals(good_pixel_id): def order_history(order_totals, grid): """An `OrderHistory` object that does not need the database.""" oh = timify.OrderHistory(grid=grid, time_step=test_config.LONG_TIME_STEP) - oh._data = order_totals # pylint:disable=protected-access + oh._data = order_totals return oh diff --git a/tests/forecasts/timify/test_order_history.py b/tests/forecasts/timify/test_order_history.py index 9d69d70..eb6bbcc 100644 --- a/tests/forecasts/timify/test_order_history.py +++ b/tests/forecasts/timify/test_order_history.py @@ -1,5 +1,4 @@ """Test the basic functionalities in the `OrderHistory` class.""" -# pylint:disable=no-self-use import pytest diff --git a/tests/test_version.py b/tests/test_version.py index 474b7b1..4ee70b3 100644 --- a/tests/test_version.py +++ b/tests/test_version.py @@ -20,8 +20,6 @@ import urban_meal_delivery class TestPEP404Compliance: """Packaged version identifier is PEP440 compliant.""" - # pylint:disable=no-self-use - @pytest.fixture def parsed_version(self) -> str: """The packaged version.""" @@ -47,8 +45,6 @@ class TestPEP404Compliance: class TestSemanticVersioning: """Packaged version follows a strict subset of semantic versioning.""" - # pylint:disable=no-self-use - version_pattern = re.compile( r'^(0|([1-9]\d*))\.(0|([1-9]\d*))\.(0|([1-9]\d*))(\.dev(0|([1-9]\d*)))?$', )