from contextlib import contextmanager import pytest from marshmallow import ValidationError @contextmanager def raises_validation_error(expected_validation_error): with pytest.raises(ValidationError) as e: yield assert ( e.value.messages == expected_validation_error ), f"Unexpected validation error {e.value.messages} != {expected_validation_error}"