Я пишу тесты для функции, подобной следующей:
def foo():
print 'hello world!'
Поэтому, когда я хочу протестировать эту функцию, код будет примерно таким:
import sys
from foomodule import foo
def test_foo():
foo()
output = sys.stdout.getline().strip() # because stdout is an StringIO instance
assert output == 'hello world!'
Но если я запускаю тесты с параметром -s, тест вылетает. Как я могу поймать результат с помощью unittest или носового модуля?