У меня есть тестовый тест ActionController, который отправляет запрос «post» тестируемому контроллеру с неправильными данными. Контроллер пытается создать новый объект и сохранить его. Модель имеет методы проверки, которые запускаются при сохранении, и они генерируют ошибку проверки, обнаруживая неверные данные, отправленные тестом.Проверка контроллеров Rails. Ошибки проверки не повышают ответ HTTP-ошибки.
Пока все хорошо. Теперь контроллер проверяет, что статус ответа HTTP является сбой, используя assert_response: failure. Тем не менее, тест не на этом этапе говорить:
Ожидаемый ответ быть <: отказ>, но < 200>
The @ obj.errors правильно заполняется с ошибкой проверки, но как-то ответа HTTP всегда 200.
Любые подсказки?
Да, это действительно по дизайну. Контроллер ничего не делает, и ответ HTTP должен быть 200, так как сам запрос был прав, хотя и с недопустимыми данными. Спасибо, что подтвердили это. – bhavinb