Pytest: pytest.raises не работает на конечной точке Flask - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть простая конечная точка 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 проходят, но этот не пройден.Кто-нибудь может увидеть, почему этот тест не проходит?Конечная точка вызывает исключение, когда обязательный параметр не передается, поэтому я бы подумал, что этот тест перехватит это.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...