Sha256: fbf5c144c1d69891032edb25e935d861f39ee0ca43d5335bf6514648b6bca486

Contents?: true

Size: 664 Bytes

Versions: 1

Compression:

Stored size: 664 Bytes

Contents

RSpec.describe Mutant::Actor::Sender do
  let(:object)   { described_class.new(thread, mutex, mailbox) }

  let(:thread)   { double('Thread')       }
  let(:mutex)    { double('Mutex')        }
  let(:mailbox)  { double('Mailbox')      }
  let(:type)     { double('Type')         }
  let(:payload)  { double('Payload')      }
  let(:_message) { message(type, payload) }

  describe '#call' do
    subject { object.call(_message) }

    before do
      expect(mutex).to receive(:synchronize).ordered.and_yield
      expect(mailbox).to receive(:<<).with(_message)
      expect(thread).to receive(:run)
    end

    it_should_behave_like 'a command method'
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mutant-0.7.1 spec/unit/mutant/actor/sender_spec.rb