Не удается проверить подлинность токена CSRF при тестировании приложения emberjs/rails/devise с использованием qunit

У меня есть приложение emberjs/rails, использующее разработку для аутентификации пользователя. Я создаю интеграционные тесты, используя qunit. Я вручную вхожу в приложение перед запуском тестов. Запросы GET могут обрабатываться во время тестов, но запросы POST не выполняются. В частности, при выполнении запроса POST я получаю сообщение об ошибке «Не удается проверить подлинность токена CSRF» от devise. Когда я перезагружаю тесты, я выхожу из приложения.

Как мне заставить qunit хорошо играть с devise?


person Sean X. Yu    schedule 18.06.2013    source источник


Ответы (1)


Вам нужно добавить csrf_meta_tags в index.html.erb, который вы используете для запуска тестов qunit, а также вам необходимо включить jquery-ujs. Взгляните на https://github.com/frodsan/qunit-rails.

Кроме того, вы можете добавить это в свой application_controller:

skip_before_filter :verify_authenticity_token if Rails.env.test?
person delwyn    schedule 19.06.2013