Burlón: ¿Cómo puedo hacer una excepción en la persona que llama?
Supongamos que este es el código
<code>def move(*args, **kwargs): try: shutil.move(source, destination) except Exception as e: raise e </code>
y en mi tests.py
<code>@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) </code>
Dijo esto
<code> File "unittests.py", line 84, in test_move_catch_exception self.src_f, self.src_f, **self.kwargs) AssertionError: Exception not raised </code>
Si afirmo enmock_rmtree
pasara. ¿Cómo puedo hacer valer a la persona que llama (en este caso, la funciónmove
)?
Comoaquavitae señalado, las razones principales fueron el error de copiar y pegar, y también estaba afirmando una tupla al principio. Siempre con el tipo de retorno correcto ...