[MESSAGES CONTROL] # Disabling messages that we either don't care about for tests or are necessary to break for tests. disable = invalid-name, # we prefer long, descriptive, names for tests missing-docstring, # we don't write docstrings for tests bad-continuation, # we let black handle this ungrouped-imports, # we let isort handle this wrong-import-order, # we let isort handle this abstract-class-instantiated, # we do this on purpose to test that they are enforced no-member, # raised on patched objects with mock checks no-self-use, # common pattern when using pytest classes: can be enabled once all tests are refactored to pytest functions duplicate-code, # unit tests for similar things tend to be similar too-many-instance-attributes, # common pattern when using pytest classes: can be enabled once all tests are refactored to pytest functions too-few-public-methods, # common when setting up mock classes too-many-public-methods, # common pattern when using pytest classes: can be enabled once all tests are refactored to pytest functions too-many-statements, # common pattern when using pytest classes: can be enabled once all tests are refactored to pytest functions attribute-defined-outside-init, # broken by some pytest classes monkeypatching: can be enabled once all tests are refactored to pytest functions protected-access, # raised when calling _ methods abstract-method, # we do this on purpose to test that they are enforced redefined-outer-name, # raised when using decorators unused-argument, # raised when patches are needed but not called # All below are disabled because we need to support Python 2 useless-object-inheritance, raise-missing-from, super-with-arguments, consider-using-f-string # disable until 2022-05-05; 6 months after 3.5 deprecation [VARIABLES] additional-builtins = raw_input [DESIGN] max-args = 10 [FORMAT] max-line-length = 120 [REPORTS] msg-template = {path}:{line}: [{msg_id}({symbol}), {obj}] {msg}