Отключить защищенный доступ к pylint только для модульных тестов

У меня есть вспомогательная функция _prepend_order в модуле Python. Я хотел бы провести модульное тестирование. Я также хочу, чтобы мой модульный тест (test_extract_users.py) прошел наш линтер pylint. Мы стараемся избегать использования таких директив, как #pylint: disable=protected-access (здесь и docs здесь) в пользу согласования изменений в нашем файле .pylintrc верхнего уровня.

Можно ли настроить pylint через файл .pylintrc, чтобы предупреждения о доступе к защищенным членам были отключены во всех модульных тестах (и не отключены где-либо еще)?

(NB. Существует нерешенная проблема с августа 2015 г., 618: добавить другую конфигурацию для разных подкаталогов, который работал бы, поскольку я мог бы поместить свои модульные тесты в подкаталог "tests". Но, к сожалению, эта проблема все еще открыта в августе 2019 года, и поэтому я подозреваю, что ответ на этот вопрос о переполнении стека: "Нет, это невозможно".)


person dumbledad    schedule 22.08.2019    source источник


Ответы (1)


Я не уверен, что есть вариант конфигурации для чего-то вроде этого. Это некрасиво, но вы можете использовать отдельный файл .pylintrc для линтинга ваших тестов, используя аргумент --rcfile для pylint.

В этом случае я бы просто использовал директиву.

person Nate Dellinger    schedule 22.08.2019