Sha256: 17b28c9f061a9f9caf538835063e37084bd5cf0f40023c2f77759d70f742a8b7

Contents?: true

Size: 1.12 KB

Versions: 3

Compression:

Stored size: 1.12 KB

Contents

shared_examples 'Unidom::Product::Concerns::AsSourceProduct' do |model_attributes|

  context do

    target_product_associating_1_attribtues = {
        target_id:                SecureRandom.uuid,
        product_association_code: 'CPLM',
        ordinal:                  1,
        quantity:                 1
      }

    target_product_associating_2_attribtues = {
        target_id:                SecureRandom.uuid,
        product_association_code: 'ICPT',
        ordinal:                  2,
        quantity:                 2
      }

    it_behaves_like 'has_many', model_attributes, :target_product_associatings, Unidom::Product::ProductAssociating, [ target_product_associating_1_attribtues, target_product_associating_2_attribtues ]

    model  = described_class.create! model_attributes
    target = described_class.create! model_attributes
    it_behaves_like 'assert_present!', model, :associate!, [ target, { due_to: 'CPLM', at: Time.now } ], [ { 0 => :target }, :due_to, :at ]
    it_behaves_like 'assert_present!', model, :associate?, [ target, { due_to: 'CPLM', at: Time.now } ], [ { 0 => :target }, :due_to, :at ]

  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
unidom-product-2.0 lib/rspec/models/unidom/product/concerns/as_source_product_shared_examples.rb
unidom-product-1.7.8 lib/rspec/models/unidom/product/concerns/as_source_product_shared_examples.rb
unidom-product-1.7.7 lib/rspec/models/unidom/product/concerns/as_source_product_shared_examples.rb