2017-04-27 18:47:27 +10:00
|
|
|
|
|
|
|
RSpec.describe Jobs::GrantBadge, type: :job do
|
|
|
|
let(:users) { [Fabricate(:user), Fabricate(:user)] }
|
|
|
|
let(:badge) { Fabricate(:badge, name: 'el-grande') }
|
|
|
|
|
|
|
|
before do
|
|
|
|
SiteSetting.stubs(:discourse_donations_reward_badge_name).returns(badge.name)
|
2017-04-27 19:10:00 +10:00
|
|
|
PluginStore.set('discourse-donations', 'badge:grant', [users.first.email, users.last.email])
|
2017-04-27 18:47:27 +10:00
|
|
|
end
|
|
|
|
|
2017-04-27 19:10:00 +10:00
|
|
|
it 'grants all the users the badge' do
|
|
|
|
Jobs::GrantBadge.new.execute(nil)
|
|
|
|
aggregate_failures do
|
|
|
|
expect(users.first.badges).to include(badge)
|
|
|
|
expect(users.last.badges).to include(badge)
|
|
|
|
end
|
|
|
|
end
|
2017-04-27 18:47:27 +10:00
|
|
|
end
|