diff options
| author | Alban Peignier | 2012-04-17 16:08:38 +0200 |
|---|---|---|
| committer | Alban Peignier | 2012-04-17 16:08:38 +0200 |
| commit | 30b0118f2523a04d6777c8ec79b3181c128b3bf8 (patch) | |
| tree | cb1bd017ec89d376328c625fed647073b34b25d9 /spec/support/devise.rb | |
| parent | 609feda78e6fa4047fa1d3af4f633a856224bd33 (diff) | |
| download | chouette-core-30b0118f2523a04d6777c8ec79b3181c128b3bf8.tar.bz2 | |
Fixes all specs. Refs #6
Diffstat (limited to 'spec/support/devise.rb')
| -rw-r--r-- | spec/support/devise.rb | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/spec/support/devise.rb b/spec/support/devise.rb new file mode 100644 index 000000000..d4e37dbe6 --- /dev/null +++ b/spec/support/devise.rb @@ -0,0 +1,45 @@ +module DeviseRequestHelper + include Warden::Test::Helpers + + def login_user + @user ||= FactoryGirl.create :user + login_as @user, :scope => :user + # post_via_redirect user_session_path, 'user[email]' => @user.email, 'user[password]' => @user.password + end + + def self.included(base) + base.class_eval do + extend ClassMethods + end + end + + module ClassMethods + + def login_user + before(:each) do + login_user + end + after(:each) do + Warden.test_reset! + end + end + + end + +end + +module DeviseControllerhelper + def login_user + before(:each) do + @request.env["devise.mapping"] = Devise.mappings[:user] + sign_in Factory.create(:user) + end + end +end + +RSpec.configure do |config| + config.include Devise::TestHelpers, :type => :controller + config.extend DeviseControllerhelper, :type => :controller + + config.include DeviseRequestHelper, :type => :request +end |
