Sha256: fa0cce5eeeeb76ca5e0ff2886e344c0c69bb2fad7c1ae824e07f28bdee8266c7

Contents?: true

Size: 1.12 KB

Versions: 134

Compression:

Stored size: 1.12 KB

Contents

require 'spec_helper'
require 'protobuf/socket'

shared_examples "a Protobuf Connector" do
  subject{ described_class.new({}) }

  context "API" do
    # Check the API
    specify{ subject.respond_to?(:send_request, true).should be_true }
    specify{ subject.respond_to?(:post_init, true).should be_true }
    specify{ subject.respond_to?(:close_connection, true).should be_true }
    specify{ subject.respond_to?(:error?, true).should be_true }
  end
end

describe Protobuf::Rpc::Connectors::Socket do
  subject{ described_class.new({}) }

  it_behaves_like "a Protobuf Connector"

  specify{ described_class.include?(Protobuf::Rpc::Connectors::Common).should be_true }

  context "#read_response" do
    let(:data){ "New data" }

    it "fills the buffer with data from the socket" do
      socket = StringIO.new("#{data.bytesize}-#{data}")
      subject.instance_variable_set(:@socket, socket)
      subject.instance_variable_set(:@stats, OpenStruct.new)
      subject.should_receive(:parse_response).and_return(true)

      subject.__send__(:read_response)
      subject.instance_variable_get(:@response_data).should eq(data)
    end
  end
end

Version data entries

134 entries across 134 versions & 1 rubygems

Version Path
protobuf-3.0.4 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.13 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-3.0.3 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-3.0.2 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-3.0.1 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-3.0.0 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-3.0.0.rc2 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-3.0.0.rc1 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.12 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.11 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.10 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.9 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.8 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.7 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.6 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.7.12 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.5 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.4 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.3 spec/lib/protobuf/rpc/connectors/socket_spec.rb
protobuf-2.8.2 spec/lib/protobuf/rpc/connectors/socket_spec.rb