Я перевожу свои стандартные модульные тесты Rails на RSpec, и у меня проблемы с устройством. Все контроллеры, содержащие devise аутентификацию, не работают с RSpec.
Я пытаюсь подписать_админа в RSpec, следуя учебному пособию, но безуспешно:
https://github.com/plataformatec/devise/wiki/How-To:-Controllers-and-Views-tests-with-Rails-3-(and-rspec)
Вот что я попробовал:
/ спецификации / контроллеры / ipad_tech_infos_controller_spec.rb
before :each do
@request.env["devise.mapping"] = Devise.mappings[:admin]
@admin = FactoryGirl.create :admin
sign_in @admin
end
/ Спецификация / поддержка / devise.rb
RSpec.configure do |config|
config.include Devise::TestHelpers, :type => :controller
end
/ спецификации / фабрики / admin.rb
FactoryGirl.define do
factory :admin do
email "abc@abc.com"
password "foobar"
password_confirmation {|u| u.password}
end
end
Моя модель не подтверждена, все спецификации моего контроллера не работают.
Если я удалю before_filter: authenticate_admin! тогда все мои тесты пройдут.
Кто-нибудь может помочь?