Sha256: 2ea6ccbb7ca880d55f5a3979aa8d50743ff97b1194d854f6102320e0c89d1ea4
Contents?: true
Size: 878 Bytes
Versions: 20
Compression:
Stored size: 878 Bytes
Contents
module Spree class TestArgumentsJob < Spree::BaseJob def perform(serializer); end end end shared_examples 'an ActiveJob serializable hash' do context 'Rails < 6', if: Rails::VERSION::MAJOR < 6 do it 'can not be serialized by ActiveJob' do expect { Spree::TestArgumentsJob.perform_later(subject) }.to( raise_error(ActiveJob::SerializationError, 'Unsupported argument type: Symbol') ) end end context 'Rails >= 6', if: Rails::VERSION::MAJOR >= 6 do it 'can be serialized by ActiveJob' do # It should fail if subject contains any custom instance (e.g Spree::Money) expect { Spree::TestArgumentsJob.perform_later(subject) }.not_to raise_error expect { Spree::TestArgumentsJob.perform_later(subject.merge(price: Spree::Money.new(0))) }.to( raise_error(ActiveJob::SerializationError) ) end end end
Version data entries
20 entries across 20 versions & 3 rubygems