Sha256: 1c6a145ffbfb7a9afd6c6b79915d6c961436b9f89b31be2de6ac8efbad36d928

Contents?: true

Size: 1.76 KB

Versions: 4

Compression:

Stored size: 1.76 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/spec_helper')

describe "User with remember_me submodule" do

  # ----------------- PLUGIN CONFIGURATION -----------------------
  describe User, "loaded plugin configuration" do
    before(:all) do
      sorcery_reload!([:remember_me])
      create_new_user
    end
  
    after(:each) do
      User.sorcery_config.reset!
    end
    
    it "should allow configuration option 'remember_me_token_attribute_name'" do
      sorcery_model_property_set(:remember_me_token_attribute_name, :my_token)
      User.sorcery_config.remember_me_token_attribute_name.should equal(:my_token)
    end

    it "should allow configuration option 'remember_me_token_expires_at_attribute_name'" do
      sorcery_model_property_set(:remember_me_token_expires_at_attribute_name, :my_expires)
      User.sorcery_config.remember_me_token_expires_at_attribute_name.should equal(:my_expires)
    end
    
    specify { @user.should respond_to(:remember_me!) }
    
    specify { @user.should respond_to(:forget_me!) }
    
    it "should generate a new token on 'remember_me!'" do
      @user.remember_me_token.should be_nil
      @user.remember_me!
      @user.remember_me_token.should_not be_nil
    end
    
    it "should set an expiration based on 'remember_me_for' attribute" do
      sorcery_model_property_set(:remember_me_for, 2 * 60 * 60 * 24)
      @user.remember_me!
      @user.remember_me_token_expires_at.utc.to_s.should == (Time.now + 2 * 60 * 60 * 24).utc.to_s
    end
    
    it "should delete the token and expiration on 'forget_me!'" do
      @user.remember_me!
      @user.remember_me_token.should_not be_nil
      @user.forget_me!
      @user.remember_me_token.should be_nil
      @user.remember_me_token_expires_at.should be_nil
    end
  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sorcery-0.5.21 spec/rails3_mongoid/spec/user_remember_me_spec.rb
sorcery-0.5.2 spec/rails3_mongoid/spec/user_remember_me_spec.rb
sorcery-0.5.1 spec/rails3_mongoid/spec/user_remember_me_spec.rb
sorcery-0.5.0 spec/rails3_mongoid/spec/user_remember_me_spec.rb