Fix poll expiration notify worker spec sometimes return error
This commit is contained in:
parent
3be796adf8
commit
88339b3657
4 changed files with 12 additions and 1 deletions
2
Gemfile
2
Gemfile
|
@ -142,6 +142,8 @@ group :test do
|
||||||
|
|
||||||
# Stub web requests for specs
|
# Stub web requests for specs
|
||||||
gem 'webmock', '~> 3.18'
|
gem 'webmock', '~> 3.18'
|
||||||
|
|
||||||
|
gem 'rspec-retry', '>= 0.6.2'
|
||||||
end
|
end
|
||||||
|
|
||||||
group :development do
|
group :development do
|
||||||
|
|
|
@ -632,6 +632,8 @@ GEM
|
||||||
rspec-expectations (~> 3.12)
|
rspec-expectations (~> 3.12)
|
||||||
rspec-mocks (~> 3.12)
|
rspec-mocks (~> 3.12)
|
||||||
rspec-support (~> 3.12)
|
rspec-support (~> 3.12)
|
||||||
|
rspec-retry (0.6.2)
|
||||||
|
rspec-core (> 3.3)
|
||||||
rspec-sidekiq (3.1.0)
|
rspec-sidekiq (3.1.0)
|
||||||
rspec-core (~> 3.0, >= 3.0.0)
|
rspec-core (~> 3.0, >= 3.0.0)
|
||||||
sidekiq (>= 2.4.0)
|
sidekiq (>= 2.4.0)
|
||||||
|
@ -909,6 +911,7 @@ DEPENDENCIES
|
||||||
redis-namespace (~> 1.10)
|
redis-namespace (~> 1.10)
|
||||||
rqrcode (~> 2.2)
|
rqrcode (~> 2.2)
|
||||||
rspec-rails (~> 6.0)
|
rspec-rails (~> 6.0)
|
||||||
|
rspec-retry (>= 0.6.2)
|
||||||
rspec-sidekiq (~> 3.1)
|
rspec-sidekiq (~> 3.1)
|
||||||
rspec_chunked (~> 0.6)
|
rspec_chunked (~> 0.6)
|
||||||
rubocop
|
rubocop
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
# frozen_string_literal: true
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require 'rspec/retry'
|
||||||
|
|
||||||
if ENV['DISABLE_SIMPLECOV'] != 'true'
|
if ENV['DISABLE_SIMPLECOV'] != 'true'
|
||||||
require 'simplecov'
|
require 'simplecov'
|
||||||
SimpleCov.start 'rails' do
|
SimpleCov.start 'rails' do
|
||||||
|
@ -36,6 +38,10 @@ RSpec.configure do |config|
|
||||||
config.after :suite do
|
config.after :suite do
|
||||||
FileUtils.rm_rf(Dir[Rails.root.join('spec', 'test_files')])
|
FileUtils.rm_rf(Dir[Rails.root.join('spec', 'test_files')])
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# for RSpec::Retry
|
||||||
|
config.verbose_retry = true
|
||||||
|
config.display_try_failure_messages = true
|
||||||
end
|
end
|
||||||
|
|
||||||
def body_as_json
|
def body_as_json
|
||||||
|
|
|
@ -22,7 +22,7 @@ describe PollExpirationNotifyWorker do
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'when poll is not expired' do
|
context 'when poll is not expired' do
|
||||||
it 'requeues job' do
|
it 'requeues job', retry: 10 do
|
||||||
worker.perform(poll.id)
|
worker.perform(poll.id)
|
||||||
expect(described_class.sidekiq_options_hash['lock']).to be :until_executing
|
expect(described_class.sidekiq_options_hash['lock']).to be :until_executing
|
||||||
expect(described_class).to have_enqueued_sidekiq_job(poll.id).at(poll.expires_at + 5.minutes)
|
expect(described_class).to have_enqueued_sidekiq_job(poll.id).at(poll.expires_at + 5.minutes)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue