Cancan Abilty, Devise и Rspec тестирование - PullRequest
1 голос
/ 18 июля 2011

Люди, я новичок в среде RoR, и я пытаюсь сделать что-то простое, но усложняющееся.

У меня нет ролей в моем приложении, и я просто хочу добавитьнекоторые функции для входа в систему пользователей, но, начиная с тестов RSpec, я не могу найти способ проверить, вошел ли пользователь в систему ...

Я использую CanCan с Devise.

Я попробовал этот код ниже, но он не работает, говорит, что нет метода с именем sign_in, я уже пробовал current_user и user_signed_in?

before(:each) do
  @user = User.new
  sign_in @user
end

Чего мне не хватает?

gemfile:

source 'http://rubygems.org'

gem 'rails', '~> 3.0.7'

# authentication
gem 'devise', '~> 1.3.4'

#authorization
gem "cancan"

# mongodb database
gem 'mongoid', '~> 2.0'
gem 'bson_ext', '~> 1.3'

gem "high_voltage"
gem 'translate_routes'

gem 'factory_girl_rails', "~> 1.1.rc1"

group :development, :test do
  gem "rspec-rails", ">= 2.0.0"
  gem "cucumber-rails", ">= 0.3.2"
  gem "webrat", ">= 0.7.2"
  gem 'rspec', '2.5.0'
  gem 'spork'
  gem 'launchy'
  gem 'autotest'
  gem 'autotest-rails-pure'
  gem 'ruby-debug'
  gem 'rake', '0.9.2'
  gem 'shoulda'
end

1 Ответ

1 голос
/ 18 июля 2011

Есть ли у вас файл spec / support / devise.rb? Необходимо включить

RSpec.configure do |config|
  config.include Devise::TestHelpers, :type => :controller
end
...