У меня есть простая конечная точка Flask, которую я пытаюсь проверить с помощью pytest.Конечная точка ожидает определенный параметр (my_param) в запросе json.Это выглядит так:
api = Flask(__name__)
@api.route('/myservice', methods=['POST'])
def run_service():
if 'my_param' not in request.get_json():
raise Exception('The required parameter \'my_param\' is missing.')
# rest of code here
Конечная точка работает как положено.Однако теста нет.Вот тест для проверки того, что в запросе передается обязательный параметр my_param:
def test_raises_exception_on_missing_parameter(client):
with pytest.raises(Exception):
client.post('/myservice', json={'some_param': 'aa bb cc'}) # my_param not passed
Все остальные мои тесты pytest проходят, но этот не пройден.Кто-нибудь может увидеть, почему этот тест не проходит?Конечная точка вызывает исключение, когда обязательный параметр не передается, поэтому я бы подумал, что этот тест перехватит это.Спасибо.