diff options
author | David Heinemeier Hansson <david@loudthinking.com> | 2014-05-19 12:06:09 +0200 |
---|---|---|
committer | David Heinemeier Hansson <david@loudthinking.com> | 2014-05-19 12:06:09 +0200 |
commit | 211ce71400449c7e65cbef8ba9546418a20b3c8f (patch) | |
tree | 46715d030772f963621efa600e4a9cf2ee1faf93 /test/cases | |
parent | 65bf5f101e1105411afe030887fbe203d08dadbd (diff) | |
download | rails-211ce71400449c7e65cbef8ba9546418a20b3c8f.tar.gz rails-211ce71400449c7e65cbef8ba9546418a20b3c8f.tar.bz2 rails-211ce71400449c7e65cbef8ba9546418a20b3c8f.zip |
Add GlobalID support for serialization
Diffstat (limited to 'test/cases')
-rw-r--r-- | test/cases/job_serialization_test.rb | 15 | ||||
-rw-r--r-- | test/cases/parameters_test.rb | 31 |
2 files changed, 46 insertions, 0 deletions
diff --git a/test/cases/job_serialization_test.rb b/test/cases/job_serialization_test.rb new file mode 100644 index 0000000000..b1e24db22e --- /dev/null +++ b/test/cases/job_serialization_test.rb @@ -0,0 +1,15 @@ +require 'helper' +require 'jobs/gid_job' +require 'models/person' + +class JobSerializationTest < ActiveSupport::TestCase + setup do + $BUFFER = [] + @person = Person.find(5) + end + + test 'serialize job with gid' do + GidJob.enqueue @person + assert_equal "Person with ID: 5", $BUFFER.pop + end +end diff --git a/test/cases/parameters_test.rb b/test/cases/parameters_test.rb new file mode 100644 index 0000000000..eafa5a052b --- /dev/null +++ b/test/cases/parameters_test.rb @@ -0,0 +1,31 @@ +require 'helper' +require 'active_job/parameters' +require 'models/person' + +class ParameterSerializationTest < ActiveSupport::TestCase + test 'should make no change to regular values' do + assert_equal [ 1, "something" ], ActiveJob::Parameters.serialize([ 1, "something" ]) + end + + test 'should serialize records with global id' do + assert_equal [ Person.find(5).gid ], ActiveJob::Parameters.serialize([ Person.find(5) ]) + end + + test 'should serialize values and records together' do + assert_equal [ 3, Person.find(5).gid ], ActiveJob::Parameters.serialize([ 3, Person.find(5) ]) + end +end + +class ParameterDeserializationTest < ActiveSupport::TestCase + test 'should make no change to regular values' do + assert_equal [ 1, "something" ], ActiveJob::Parameters.deserialize([ 1, "something" ]) + end + + test 'should deserialize records with global id' do + assert_equal [ Person.find(5) ], ActiveJob::Parameters.deserialize([ Person.find(5).gid ]) + end + + test 'should serialize values and records together' do + assert_equal [ 3, Person.find(5) ], ActiveJob::Parameters.deserialize([ 3, Person.find(5).gid ]) + end +end |