Sha256: c3d0d3e042c4414b95a5468b50774a2fd873c5a7c2d156a597b83f8ef9fb4b86

Contents?: true

Size: 880 Bytes

Versions: 2

Compression:

Stored size: 880 Bytes

Contents

require 'spec_helper'

module NotifyUser
  describe UserHash do
    let(:user) { create(:user) }
    let(:user_hash) { UserHash.create(target: user, type: 'NewPostNotification') }

    describe 'check hash' do
      before :each do
        user_hash.save
      end

      it "returns true if hash hasn't be used before" do
        expect(UserHash.confirm_hash(user_hash.token, 'NewPostNotification')).to eq true
      end

      it 'returns false if hash has been used before' do
        user_hash.deactivate
        expect(UserHash.confirm_hash(user_hash.token, 'NewPostNotification')).to eq false
      end

      it 'deactivates hash setting active to false' do
        user_hash.deactivate
        expect(user_hash.active).to eq false
      end

      it 'generates a 44 character hash on create' do
        expect(user_hash.token.length).to eq 44
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
notify_user-0.3.2 spec/models/notify_user/user_hash_spec.rb
notify_user-0.3.1 spec/models/notify_user/user_hash_spec.rb