diaspora/spec/models/invitation_code_spec.rb

52 lines
1.2 KiB
Ruby

require 'spec_helper'
describe InvitationCode do
it 'has a valid factory' do
Factory(:invitation_code).should be_valid
end
it 'sets the count to a default value' do
code = Factory(:invitation_code)
code.count.should > 0
end
describe '#use!' do
it 'decrements the count of the code' do
code = Factory(:invitation_code)
expect{
code.use!
}.to change(code, :count).by(-1)
end
end
describe '.beta?' do
it 'returns true if the invite code user is beta' do
code = Factory(:invitation_code)
Role.add_beta(code.user.person)
code.user.should be_beta
code.should be_beta
end
end
describe '.default_inviter_or' do
before do
@old_account = AppConfig[:admin_account]
AppConfig[:admin_account] = 'bob'
end
after do
AppConfig[:admin_account] = @old_account
end
it 'grabs the set admin account for the pod...' do
InvitationCode.default_inviter_or(alice).username.should == 'bob'
end
it '..or the given user' do
AppConfig[:admin_account] = ''
InvitationCode.default_inviter_or(alice).username.should == 'alice'
end
end
end