Como afirmar a saída com nosetest / unittest em python?

Estou escrevendo testes para uma função como a próxima: def foo(): print 'hello world!' Então, quando eu quiser testar essa função, o código será assim: import sys from foomodule import foo def test_foo(): foo() output = sys.stdout.getline().strip() # because stdout is an StringIO instance...