We were using `Budget.last`, but the last budget might not be published yet. I must admit I don't know whether these tasks are useful, but I'm not removing them because I'm not sure that won't harm any CONSUL installations.
32 lines
1.1 KiB
Ruby
32 lines
1.1 KiB
Ruby
require "rails_helper"
|
|
|
|
describe "budget tasks" do
|
|
describe "rake budgets:email:selected" do
|
|
before { Rake::Task["budgets:email:selected"].reenable }
|
|
|
|
it "sends emails to users from the current budget and not the last budget created" do
|
|
create(:budget_investment, :selected, author: create(:user, email: "selectme@consul.dev"))
|
|
create(:budget, :drafting)
|
|
|
|
Rake.application.invoke_task("budgets:email:selected")
|
|
|
|
expect(ActionMailer::Base.deliveries.count).to eq 1
|
|
expect(ActionMailer::Base.deliveries.last.to).to eq ["selectme@consul.dev"]
|
|
end
|
|
end
|
|
|
|
describe "rake budgets:email:unselected" do
|
|
before { Rake::Task["budgets:email:unselected"].reenable }
|
|
|
|
it "sends emails to users from the current budget and not the last budget created" do
|
|
create(:budget_investment, author: create(:user, email: "ignorme@consul.dev"))
|
|
create(:budget, :drafting)
|
|
|
|
Rake.application.invoke_task("budgets:email:unselected")
|
|
|
|
expect(ActionMailer::Base.deliveries.count).to eq 1
|
|
expect(ActionMailer::Base.deliveries.last.to).to eq ["ignorme@consul.dev"]
|
|
end
|
|
end
|
|
end
|