From 1077089e5c4a440046aede87df968c39ea63a9fe Mon Sep 17 00:00:00 2001 From: Eugene Kenny Date: Sat, 18 Apr 2020 23:55:36 +0100 Subject: [PATCH] Merge pull request #38891 from jonathanhefner/fix-activejob-delay-test Fix random CI fail due to cross-second time delay --- activejob/lib/active_job/test_helper.rb | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/activejob/lib/active_job/test_helper.rb b/activejob/lib/active_job/test_helper.rb index f93168bc41..49d25e7855 100644 --- a/activejob/lib/active_job/test_helper.rb +++ b/activejob/lib/active_job/test_helper.rb @@ -630,7 +630,10 @@ def flush_enqueued_jobs(only: nil, except: nil, queue: nil) def prepare_args_for_assertion(args) args.dup.tap do |arguments| - arguments[:at] = round_time_arguments(arguments[:at]) if arguments[:at] + if arguments[:at] + at_range = arguments[:at] - 1..arguments[:at] + 1 + arguments[:at] = ->(at) { at_range.cover?(at) } + end arguments[:args] = round_time_arguments(arguments[:args]) if arguments[:args] end end @@ -650,7 +653,7 @@ def round_time_arguments(argument) def deserialize_args_for_assertion(job) job.dup.tap do |new_job| - new_job[:at] = round_time_arguments(Time.at(new_job[:at])) if new_job[:at] + new_job[:at] = Time.at(new_job[:at]) if new_job[:at] new_job[:args] = ActiveJob::Arguments.deserialize(new_job[:args]) if new_job[:args] end end -- GitLab