initial tests for new user account
This commit is contained in:
parent
a5fa347d6b
commit
cfe04fd4e3
|
@ -32,7 +32,7 @@ module DiscourseDonations
|
|||
private
|
||||
|
||||
def reward_user?(payment)
|
||||
payment.present? && payment.successful? && current_user.present?
|
||||
payment.present? && payment.successful?
|
||||
end
|
||||
|
||||
def group_name
|
||||
|
|
|
@ -36,25 +36,43 @@ module DiscourseDonations
|
|||
before do
|
||||
SiteSetting.stubs(:discourse_donations_reward_group_name).returns(group_name)
|
||||
SiteSetting.stubs(:discourse_donations_reward_badge_name).returns(badge_name)
|
||||
Fabricate(:group, name: SiteSetting.discourse_donations_reward_group_name)
|
||||
Fabricate(:badge, name: SiteSetting.discourse_donations_reward_badge_name)
|
||||
log_in :coding_horror
|
||||
Fabricate(:group, name: group_name)
|
||||
Fabricate(:badge, name: badge_name)
|
||||
end
|
||||
|
||||
it 'has no rewards' do
|
||||
stripe.expects(:create).returns({ outcome: { seller_message: 'bummer' } })
|
||||
post :create
|
||||
expect(response_rewards).to be_empty
|
||||
shared_examples 'it has no rewards' do
|
||||
it 'rewards are empty' do
|
||||
stripe.expects(:create).returns({ outcome: { seller_message: 'bummer' } })
|
||||
post :create
|
||||
expect(response_rewards).to be_empty
|
||||
end
|
||||
end
|
||||
|
||||
it 'awards a group' do
|
||||
post :create
|
||||
expect(response_rewards).to include({'type' => 'group', 'name' => group_name})
|
||||
describe 'new user' do
|
||||
let(:params) { { email: 'new-user@example.com' } }
|
||||
|
||||
it_behaves_like 'it has no rewards'
|
||||
|
||||
it 'awards a group'
|
||||
it 'awards a badge'
|
||||
end
|
||||
|
||||
it 'awards a badge' do
|
||||
post :create
|
||||
expect(response_rewards).to include({'type' => 'badge', 'name' => badge_name})
|
||||
describe 'logged in user' do
|
||||
before do
|
||||
log_in :coding_horror
|
||||
end
|
||||
|
||||
it_behaves_like 'it has no rewards'
|
||||
|
||||
it 'awards a group' do
|
||||
post :create
|
||||
expect(response_rewards).to include({'type' => 'group', 'name' => group_name})
|
||||
end
|
||||
|
||||
it 'awards a badge' do
|
||||
post :create
|
||||
expect(response_rewards).to include({'type' => 'badge', 'name' => badge_name})
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue