Sha256: 21f11aa8a23d204972dfa945698636f1e934a81d90949a261b3d4bde7e46bfea

Contents?: true

Size: 1.54 KB

Versions: 4

Compression:

Stored size: 1.54 KB

Contents

shared_examples 'Unidom::Action::Concerns::AsActorParty' do |model_attributes, acted, actor_visitor|

  context do

    acting_1_attributes = {
      acted_id:           SecureRandom.uuid,
      acted_type:         'Unidom::Action::Acted::Mock',
      actor_visitor_id:   SecureRandom.uuid,
      actor_visitor_type: 'Unidom::Action::ActorVisitor::Mock',
      reason_id:          SecureRandom.uuid
    }

    acting_2_attributes = {
      acted_id:           SecureRandom.uuid,
      acted_type:         'Unidom::Action::Acted::Mock',
      actor_visitor_id:   SecureRandom.uuid,
      actor_visitor_type: 'Unidom::Action::ActorVisitor::Mock',
      reason_id:          SecureRandom.uuid
    }

    it_behaves_like 'has_many', model_attributes, :acted_actings, Unidom::Action::Acting, [ acting_1_attributes, acting_2_attributes ]

    model = described_class.create! model_attributes
    it_behaves_like 'assert_present!', model, :act!, [ { on: acted, from: nil,                  thru: nil,                  due_to: nil, via: actor_visitor, at: Time.now, action_code: 'C' } ], [ :on, :via, :at, :action_code ]
    it_behaves_like 'assert_present!', model, :act!, [ { on: acted, from: {},                   thru: {},                   due_to: nil, via: actor_visitor, at: Time.now, action_code: 'C' } ], [ :on, :via, :at, :action_code ]
    it_behaves_like 'assert_present!', model, :act!, [ { on: acted, from: { key_1: 'value_1' }, thru: { key_1: 'value_2' }, due_to: nil, via: actor_visitor, at: Time.now, action_code: 'C' } ], [ :on, :via, :at, :action_code ]

  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
unidom-action-2.0 lib/rspec/models/unidom/action/concerns/as_actor_party_shared_examples.rb
unidom-action-1.17.18 lib/rspec/models/unidom/action/concerns/as_actor_party_shared_examples.rb
unidom-action-1.17.17 lib/rspec/models/unidom/action/concerns/as_actor_party_shared_examples.rb
unidom-action-1.17.16 lib/rspec/models/unidom/action/concerns/as_actor_party_shared_examples.rb