Sha256: 5b3187ff293460685274c8a25d877aa0ef08c9b053212103f667eb2072977e0f

Contents?: true

Size: 731 Bytes

Versions: 1

Compression:

Stored size: 731 Bytes

Contents

RSpec.describe Mutant::Actor::Mailbox do
  describe '.new' do
    subject { described_class.new }

    its(:frozen?) { should be(true) }
  end

  before do
    allow(Mutex).to receive(:new).and_return(mutex)
  end

  let(:mutex)  { double('Mutex')     }
  let(:object) { described_class.new }
  let(:thread) { double('Thread') }

  describe '#sender' do
    subject { object.sender(thread) }

    it { should eql(Mutant::Actor::Sender.new(thread, mutex, [])) }
  end

  describe '#receiver' do
    subject { object.receiver }

    it { should eql(Mutant::Actor::Receiver.new(mutex, [])) }
  end

  describe '#actor' do
    subject { object.actor(thread) }

    it { should eql(Mutant::Actor::Actor.new(thread, object)) }
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mutant-0.7.1 spec/unit/mutant/mailbox_spec.rb