Я изучаю pytest, и я накладываю свой код на pylint. Но пилинт все еще жалуется: W0621: Redefining name %r from outer scope (line %s)
для следующего примера из pytest:
# test_wallet.py
@pytest.fixture
def my_wallet():
'''Returns a Wallet instance with a zero balance'''
return Wallet()
@pytest.mark.parametrize("earned,spent,expected", [
(30, 10, 20),
(20, 2, 18),
])
def test_transactions(my_wallet, earned, spent, expected):
my_wallet.add_cash(earned)
my_wallet.spend_cash(spent)
assert my_wallet.balance == expected
Переопределение имени my_wallet
из внешней области.
Я нашел обходное решение, чтобы добавить _
префикс к имени прибора: _my_wallet
.
Какая была бы лучшая практика, если я хочу сохранить светильники в одном файле как функции?
- Подготовьте все светильники с помощью
_
? - Отключить эту проверку
pylint
для тестов? - Лучшее предложение?