VRFS-1664 added another test
This commit is contained in:
parent
d36ec17436
commit
8d35ea09e8
|
|
@ -15,13 +15,20 @@ describe EmailBatchNewMusician do
|
|||
|
||||
let (:new_musician_batch) { FactoryGirl.create(:email_batch_new_musician) }
|
||||
|
||||
let (:receiver) {
|
||||
let (:receiver1) {
|
||||
FactoryGirl.create(:user,
|
||||
:created_at => Time.now - (EmailBatchNewMusician::SINCE_DAYS.days + 1.day),
|
||||
:last_jam_locidispid => 1,
|
||||
:last_jam_addr => 1
|
||||
)
|
||||
}
|
||||
let (:receiver2) {
|
||||
FactoryGirl.create(:user,
|
||||
:created_at => Time.now - (EmailBatchNewMusician::SINCE_DAYS.days + 1.day),
|
||||
:last_jam_locidispid => 3,
|
||||
:last_jam_addr => 3
|
||||
)
|
||||
}
|
||||
|
||||
let (:drummer) { FactoryGirl.create(:user,
|
||||
:last_jam_locidispid => 1,
|
||||
|
|
@ -38,27 +45,51 @@ describe EmailBatchNewMusician do
|
|||
let (:loser) { FactoryGirl.create(:user,
|
||||
:last_jam_locidispid => 2,
|
||||
:last_jam_addr => 2) }
|
||||
let (:drummer3) { FactoryGirl.create(:user,
|
||||
:last_jam_locidispid => 3,
|
||||
:last_jam_addr => 3) }
|
||||
let (:guitarist3) { FactoryGirl.create(:user,
|
||||
:last_jam_locidispid => 3,
|
||||
:last_jam_addr => 3) }
|
||||
let (:bassist3) { FactoryGirl.create(:user,
|
||||
:last_jam_locidispid => 3,
|
||||
:last_jam_addr => 3) }
|
||||
let (:vocalist3) { FactoryGirl.create(:user,
|
||||
:last_jam_locidispid => 3,
|
||||
:last_jam_addr => 3) }
|
||||
before(:each) do
|
||||
|
||||
drummer; guitarist; bassist; vocalist; loser
|
||||
drummer3; guitarist3; bassist3; vocalist3
|
||||
receiver1; receiver2
|
||||
new_musician_batch.reset!
|
||||
JamRuby::Score.delete_all
|
||||
JamRuby::Score.createx(1, 'a', 1, 1, 'a', 1, 10)
|
||||
JamRuby::Score.createx(1, 'a', 1, 2, 'a', 2, Score::MAX_YELLOW_LATENCY + 1)
|
||||
end
|
||||
|
||||
it 'sets up data properly' do
|
||||
receiver; drummer; loser; vocalist
|
||||
results = new_musician_batch.fetch_recipients
|
||||
expect(results.count).to eq(1)
|
||||
user, new_musicians = results[0]
|
||||
expect(user.id).to eq(receiver.id)
|
||||
expect(new_musicians.count).to eq(2)
|
||||
expect(user.id).to eq(receiver1.id)
|
||||
expect(new_musicians.count).to eq(4)
|
||||
end
|
||||
|
||||
it 'sends email' do
|
||||
receiver; drummer; loser; vocalist
|
||||
ebatch = new_musician_batch
|
||||
ebatch.deliver_batch
|
||||
expect(UserMailer.deliveries.length).to eq(1)
|
||||
end
|
||||
|
||||
it 'handles multiple receivers' do
|
||||
JamRuby::Score.createx(1, 'a', 1, 3, 'a', 3, 10)
|
||||
results = new_musician_batch.fetch_recipients
|
||||
expect(results.count).to eq(2)
|
||||
user, new_musicians = results.detect { |rr| rr[0].id == receiver1.id }
|
||||
expect(new_musicians.count).to eq(8)
|
||||
user, new_musicians = results.detect { |rr| rr[0].id == receiver2.id }
|
||||
expect(new_musicians.count).to eq(4)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in New Issue