Sha256: 895c07d179baf0a47ad3618e80d9480423947fb284820f998abc598a530a6abe

Contents?: true

Size: 914 Bytes

Versions: 2

Compression:

Stored size: 914 Bytes

Contents

require 'spec_helper'
require 'celluloid/zmq'

describe Miu::Publisher do
  context 'miu socket' do
    it_should_behave_like 'publishable socket' do
      let(:base) { Miu::PubSocket }
    end
  end

  context 'celluloid/zmq socket' do
    it_should_behave_like 'publishable socket' do
      let(:base) { Celluloid::ZMQ::PubSocket }
    end
  end

  context 'other socket' do
    class MyPubSocket
      def connect(address); end
      def write; end
    end

    it_should_behave_like 'publishable socket' do
      let(:base) { MyPubSocket }
    end
  end

  context 'include' do
    before do
      publisher = stub(Miu::Publisher)
      Miu::Publisher.stub!(:new).and_return(publisher)

      @klass = Class.new do
        include Miu::Publisher
        socket_type Miu::PubSocket
      end
    end

    describe '#socket_type' do
      it { expect(@klass.socket_type).to eq Miu::PubSocket }
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
miu-0.2.3 spec/miu/publisher_spec.rb
miu-0.2.2 spec/miu/publisher_spec.rb