Fix poll expiration notify worker spec sometimes return error

This commit is contained in:
KMY 2023-08-09 10:25:44 +09:00
parent 3be796adf8
commit 88339b3657
4 changed files with 12 additions and 1 deletions

View file

@ -142,6 +142,8 @@ group :test do
# Stub web requests for specs
gem 'webmock', '~> 3.18'
gem 'rspec-retry', '>= 0.6.2'
end
group :development do

View file

@ -632,6 +632,8 @@ GEM
rspec-expectations (~> 3.12)
rspec-mocks (~> 3.12)
rspec-support (~> 3.12)
rspec-retry (0.6.2)
rspec-core (> 3.3)
rspec-sidekiq (3.1.0)
rspec-core (~> 3.0, >= 3.0.0)
sidekiq (>= 2.4.0)
@ -909,6 +911,7 @@ DEPENDENCIES
redis-namespace (~> 1.10)
rqrcode (~> 2.2)
rspec-rails (~> 6.0)
rspec-retry (>= 0.6.2)
rspec-sidekiq (~> 3.1)
rspec_chunked (~> 0.6)
rubocop

View file

@ -1,5 +1,7 @@
# frozen_string_literal: true
require 'rspec/retry'
if ENV['DISABLE_SIMPLECOV'] != 'true'
require 'simplecov'
SimpleCov.start 'rails' do
@ -36,6 +38,10 @@ RSpec.configure do |config|
config.after :suite do
FileUtils.rm_rf(Dir[Rails.root.join('spec', 'test_files')])
end
# for RSpec::Retry
config.verbose_retry = true
config.display_try_failure_messages = true
end
def body_as_json

View file

@ -22,7 +22,7 @@ describe PollExpirationNotifyWorker do
end
context 'when poll is not expired' do
it 'requeues job' do
it 'requeues job', retry: 10 do
worker.perform(poll.id)
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)