Могу я модульный тест внутренняя функция в Python?

Есть ли любой способ записать unittests или doctests для innerfunc?

def outerfunc():
    def innerfunc():
        do_something()
    return innerfunc()
8
задан Gattster 26 January 2010 в 00:57
поделиться

1 ответ

Только если вы предоставляете способ извлечения самого объекта внутреннего функционала, например,

def outerfunc(calltheinner=True):
    def innerfunc():
        do_something()
    if calltheinner:
        return innerfunc()
    else:
        return innerfunc

Если ваша внешняя функция настаивает на том, чтобы полностью скрывать внутреннее, полностью внутри себя (никогда не позволяя ему проходить снаружи, когда правильно Cajoled, чтобы сделать это), ваши единицы тесты бессильны, чтобы победить эту сильную заявку на экстремальные и полные конфиденциальности ;-).

8
ответ дан 5 December 2019 в 14:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: