Supongamos que este es el códigoBurlándose: ¿cómo hago una excepción en la persona que llama?
def move(*args, **kwargs):
try:
shutil.move(source, destination)
except Exception as e:
raise e
y en mi tests.py
@patch.object(shutil, 'move')
def test_move_catch_exception(self, mock_rmtree):
''' Tests moving a target hits exception. '''
mock_rmtree.side_effect = Exception('abc')
self.assertRaises(Exception, move,
self.src_f, self.src_f, **self.kwargs)
Se dijo que este
File "unittests.py", line 84, in test_move_catch_exception
self.src_f, self.src_f, **self.kwargs)
AssertionError: Exception not raised
Si afirmo en mock_rmtree
pasará. ¿Cómo puedo afirmar en la persona que llama (en este caso, la función move
)?
Como aquavitae señaló, las principales razones fue el error de copiar y pegar, y yo también estaba afirmando una tupla en el principio. Siempre assert con el tipo de retorno correcto ...
Muchas gracias. Me disculpé por las confusiones. Fue un error de copiar y pegar que no capté. Sí, estoy parcheando mover en lugar de rmtree. Edité la publicación en consecuencia. Estás en lo correcto acerca de mi descuido aquí. Muchas gracias. – CppLearner