Я создаю приложение rails 4, и у меня возникла странная проблема: файл поддержки, который я создал для имитации входа, дает мне ошибку метода undefined.
Вот файлы
#spec/support/spec_test_helper.rb
module SpecTestHelper
def login(user)
request.session[:user_id] = user.id
end
def current_user
User.find(request.session[:user_id])
end
end
#spec_helper.rb
config.include SpecTestHelper, :type => :controller
и в спецификации контроллера
describe BooksController, "user role" do
user = Fabricate(:user) do
role { Role.find_by_account_type("user") }
end
login(user)
end
BTW Я тестирую CanCan; Я знаю, что правильный способ проверить, что CanCan тестирует способность, но уже сделал:)
Это часть сообщения об ошибке:
spec/controllers/books_controller_spec.rb:27:in `block in <top (required)>': undefined method `login' for #<Class:0x007f9f83193438> (NoMethodError)