Я новичок ie в написании юнит-тестов, так что извините за недостаток знаний. Я просмотрел предыдущие посты, но все еще не смог заставить его работать.
У меня есть
def get_bugs():
bugs = []
if ...:
bugs.append(123)
# can be empty
return bugs
def operate(bugs):
for bug in bugs:
do something
def main():
bugs = get_bugs()
if bugs:
operate(bugs)
.... # other methods
-------------------------
# in my test
@mock.patch.object(myutility, "get_bugs", autospec=True, return_value=[])
def test_nobugstooperate():
# logic to ensure myutility.operate was not called because there are no bugs
Как мне реализовать тест, в котором mutility.operate никогда не вызывался? Я не могу использовать «.called» на нем, потому что он недоступен.