diff options
author | Rafael França <rafaelmfranca@gmail.com> | 2018-09-20 15:58:41 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-20 15:58:41 -0400 |
commit | b71c024be49179b5148189229d17db77d91504b7 (patch) | |
tree | c937ec96a33fe821771735d40ca79b0ae1f187cc /activejob/test | |
parent | a96e8a2b65f8656eff8333cf5a6252a22d5b750b (diff) | |
parent | 14e278f876bb0def5378db78f53024c2a7553fa0 (diff) | |
download | rails-b71c024be49179b5148189229d17db77d91504b7.tar.gz rails-b71c024be49179b5148189229d17db77d91504b7.tar.bz2 rails-b71c024be49179b5148189229d17db77d91504b7.zip |
Merge pull request #33850 from sharang-d/fix-asset_enqueued_with-for-hashes
Make sure `assert_enqueued_with()` & `assert_performed_with()` work reliably with hash arguments
Diffstat (limited to 'activejob/test')
-rw-r--r-- | activejob/test/cases/test_helper_test.rb | 13 | ||||
-rw-r--r-- | activejob/test/jobs/multiple_kwargs_job.rb | 9 |
2 files changed, 22 insertions, 0 deletions
diff --git a/activejob/test/cases/test_helper_test.rb b/activejob/test/cases/test_helper_test.rb index 160b876e85..1e3fcf1fc2 100644 --- a/activejob/test/cases/test_helper_test.rb +++ b/activejob/test/cases/test_helper_test.rb @@ -8,6 +8,7 @@ require "jobs/logging_job" require "jobs/nested_job" require "jobs/rescue_job" require "jobs/inherited_job" +require "jobs/multiple_kwargs_job" require "models/person" class EnqueuedJobsTest < ActiveJob::TestCase @@ -555,6 +556,12 @@ class EnqueuedJobsTest < ActiveJob::TestCase assert_enqueued_with(job: HelloJob, at: Date.tomorrow.noon) end + def test_assert_enqueued_with_with_hash_arg + assert_enqueued_with(job: MultipleKwargsJob, args: [{ argument1: 1, argument2: { a: 1, b: 2 } }]) do + MultipleKwargsJob.perform_later(argument2: { b: 2, a: 1 }, argument1: 1) + end + end + def test_assert_enqueued_with_with_global_id_args ricardo = Person.new(9) assert_enqueued_with(job: HelloJob, args: [ricardo]) do @@ -1566,6 +1573,12 @@ class PerformedJobsTest < ActiveJob::TestCase end end + def test_assert_performed_with_with_hash_arg + assert_performed_with(job: MultipleKwargsJob, args: [{ argument1: 1, argument2: { a: 1, b: 2 } }]) do + MultipleKwargsJob.perform_later(argument2: { b: 2, a: 1 }, argument1: 1) + end + end + def test_assert_performed_with_with_global_id_args ricardo = Person.new(9) assert_performed_with(job: HelloJob, args: [ricardo]) do diff --git a/activejob/test/jobs/multiple_kwargs_job.rb b/activejob/test/jobs/multiple_kwargs_job.rb new file mode 100644 index 0000000000..b355c4ce1a --- /dev/null +++ b/activejob/test/jobs/multiple_kwargs_job.rb @@ -0,0 +1,9 @@ +# frozen_string_literal: true + +require_relative "../support/job_buffer" + +class MultipleKwargsJob < ActiveJob::Base + def perform(argument1:, argument2:) + JobBuffer.add("Job with argument1: #{argument1}, argument2: #{argument2}") + end +end |