je dans mon code:ne pas être pris dans try-except bloc lors de l'essai de l'unité
import api
def do_something():
try:
api = api.Api()
api.call()
except ParseException as e:
logger.exception('Error occurred')
raise ValidationError(detail=e.message)
Fondamentalement, il appelle une API et re-relances l'exception avec un autre type. Mon test vérifie le cas où l'exception est levée:
@patch('code.api')
def test_exception(self, api_mock):
api_mock.Api.side_effect = ParseException('General Error')
self.assertRaises(
ValidationError,
do_something
)
api_mock.Api.assert_called_once()
Cependant échoue parce que mon test ParseException
et non est jeté ValidationError
. Que se passe-t-il?