Simplify tests using delayed_job
Among other advantages, now we can run these tests with `rspec --tag delayed_jobs`.
This commit is contained in:
@@ -2,7 +2,7 @@ require "rails_helper"
|
||||
|
||||
describe RemoteTranslationsController do
|
||||
|
||||
describe "POST create" do
|
||||
describe "POST create", :delay_jobs do
|
||||
let(:debate) { create(:debate) }
|
||||
|
||||
before do
|
||||
@@ -10,11 +10,6 @@ describe RemoteTranslationsController do
|
||||
remote_translatable_type: debate.class.to_s,
|
||||
locale: :es }].to_json
|
||||
request.env["HTTP_REFERER"] = "any_path"
|
||||
Delayed::Worker.delay_jobs = true
|
||||
end
|
||||
|
||||
after do
|
||||
Delayed::Worker.delay_jobs = false
|
||||
end
|
||||
|
||||
it "create correctly remote translation" do
|
||||
|
||||
@@ -181,7 +181,7 @@ describe "Notifications" do
|
||||
end
|
||||
end
|
||||
|
||||
describe "#send_pending" do
|
||||
describe "#send_pending", :delay_jobs do
|
||||
let!(:user1) { create(:user) }
|
||||
let!(:user2) { create(:user) }
|
||||
let!(:user3) { create(:user) }
|
||||
@@ -192,11 +192,6 @@ describe "Notifications" do
|
||||
create(:notification, notifiable: proposal_notification, user: user2)
|
||||
create(:notification, notifiable: proposal_notification, user: user3)
|
||||
reset_mailer
|
||||
Delayed::Worker.delay_jobs = true
|
||||
end
|
||||
|
||||
after do
|
||||
Delayed::Worker.delay_jobs = false
|
||||
end
|
||||
|
||||
it "sends pending proposal notifications" do
|
||||
|
||||
@@ -64,7 +64,7 @@ describe Newsletter do
|
||||
end
|
||||
end
|
||||
|
||||
describe "#deliver" do
|
||||
describe "#deliver", :delay_jobs do
|
||||
let!(:proposals) { Array.new(3) { create(:proposal) } }
|
||||
|
||||
let!(:recipients) { proposals.map(&:author).map(&:email) }
|
||||
@@ -73,11 +73,6 @@ describe Newsletter do
|
||||
before do
|
||||
create(:debate)
|
||||
reset_mailer
|
||||
Delayed::Worker.delay_jobs = true
|
||||
end
|
||||
|
||||
after do
|
||||
Delayed::Worker.delay_jobs = false
|
||||
end
|
||||
|
||||
it "sends an email with the newsletter to every recipient" do
|
||||
|
||||
@@ -28,16 +28,7 @@ describe RemoteTranslation do
|
||||
expect(remote_translation).not_to be_valid
|
||||
end
|
||||
|
||||
describe "#enqueue_remote_translation" do
|
||||
|
||||
before do
|
||||
Delayed::Worker.delay_jobs = true
|
||||
end
|
||||
|
||||
after do
|
||||
Delayed::Worker.delay_jobs = false
|
||||
end
|
||||
|
||||
describe "#enqueue_remote_translation", :delay_jobs do
|
||||
it "after create enqueue Delayed Job" do
|
||||
expect { remote_translation.save }.to change { Delayed::Job.count }.by(1)
|
||||
end
|
||||
|
||||
@@ -48,10 +48,7 @@ shared_examples "remotely_translatable" do |factory_name, path_name, path_argume
|
||||
expect(page).not_to have_button("Translate page")
|
||||
end
|
||||
|
||||
describe "with delayed job active" do
|
||||
before { Delayed::Worker.delay_jobs = true }
|
||||
after { Delayed::Worker.delay_jobs = false }
|
||||
|
||||
describe "with delayed job active", :delay_jobs do
|
||||
scenario "should not be present when an equal RemoteTranslation is enqueued", :js do
|
||||
create(:remote_translation, remote_translatable: resource, locale: :de)
|
||||
visit path
|
||||
@@ -154,16 +151,7 @@ shared_examples "remotely_translatable" do |factory_name, path_name, path_argume
|
||||
|
||||
context "After click remote translations button" do
|
||||
|
||||
describe "with delayed jobs" do
|
||||
|
||||
before do
|
||||
Delayed::Worker.delay_jobs = true
|
||||
end
|
||||
|
||||
after do
|
||||
Delayed::Worker.delay_jobs = false
|
||||
end
|
||||
|
||||
describe "with delayed jobs", :delay_jobs do
|
||||
scenario "the remote translation button should not be present", :js do
|
||||
visit path
|
||||
select("Deutsch", from: "locale-switcher")
|
||||
|
||||
@@ -93,6 +93,14 @@ RSpec.configure do |config|
|
||||
Bullet.end_request
|
||||
end
|
||||
|
||||
config.before(:each, :delay_jobs) do
|
||||
Delayed::Worker.delay_jobs = true
|
||||
end
|
||||
|
||||
config.after(:each, :delay_jobs) do
|
||||
Delayed::Worker.delay_jobs = false
|
||||
end
|
||||
|
||||
config.before(:each, :with_frozen_time) do
|
||||
travel_to Time.now # TODO: use `freeze_time` after migrating to Rails 5.
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user