Olá. Estou com um problema e gostaria de saber se alguém tem uma idéia pra me ajudar.
Preciso testar uma função que é basicamente um show(), ou seja, uma coletânia de print()'s.
Para tanto, pensei em redirecionar o stdout da seguinte maneira:
sys.stdout = open('file', 'w')
Então, quando rodo uma função que imprime um texto com print(), o texto vai diretamente para o arquivo file.
Meu problema é que, depois de imprimir as informações, recebo um erro estranho:
AttributeError: '_io.TextIOWrapper' object has no attribute 'getvalue'
Minha dúvida é de onde vem esse erro, pois meu chute é que seja do unittest. Se for isso mesmo, como posso testar valores do stdout com o unittest, sem fazer essa "gambi"?