Sha256: cc73603abe2c01fb65c3bc885be353d0cd0e21d418a0fdb4bb71576f092e99f0

Contents?: true

Size: 1.31 KB

Versions: 4

Compression:

Stored size: 1.31 KB

Contents

# -*- encoding : utf-8 -*-

describe Card::Set::Right::Password do

  before :each do
    @user_card = Card::Auth[ 'joe@user.com' ]
  end
  
  describe '#update_attributes' do

    it 'should encrypt password' do
      @user_card.account.password_card.update_attributes! :content => 'new password'
      @user_card.account.password.should_not == 'new password'
      assert_equal @user_card.id, Card::Auth.authenticate('joe@user.com', 'new password')
    end

    it 'should validate password' do
      password_card = @user_card.account.password_card
      password_card.update_attributes :content => '2b'
      password_card.errors[:password].should_not be_empty
      
    end
    
    context 'blank password' do
      it "shouldn't change the password" do
        acct = @user_card.account
        original_pw = acct.password
        original_pw.size.should > 10
        pw_card = acct.password_card
        pw_card.content = ''
        pw_card.save
        original_pw.should == pw_card.refresh(force=true).content
      end
      
      it "shouldn't break email editing" do
        @user_card.account.update_attributes! '+*password'=>'', '+*email'=>'joe2@user.com'
#        @user_card.account.update_attributes! '+*email'=>'joe2@user.com'
        @user_card.account.email.should == 'joe2@user.com'
      end
    end
  end
  
  

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
wagn-1.13.0 spec/mod/standard/set/right/password_spec.rb
wagn-1.13.0.pre2 spec/mods/standard/sets/right/password_spec.rb
wagn-1.13.0.pre1 spec/mods/standard/sets/right/password_spec.rb
wagn-1.13.0.pre spec/mods/standard/sets/right/password_spec.rb