Sha256: 654b5136dc1d274bafaef1c4c693a7eea23c0677a265590c63989f9069e95ed3

Contents?: true

Size: 841 Bytes

Versions: 9

Compression:

Stored size: 841 Bytes

Contents

# frozen_string_literal: true
# rubocop:todo all

shared_examples 'message with a header' do
  let(:collection_name) { 'test' }

  describe 'header' do
    describe 'length' do
      let(:field) { bytes.to_s[0..3] }
      it 'serializes the length' do
        expect(field).to be_int32(bytes.length)
      end
    end

    describe 'request id' do
      let(:field) { bytes.to_s[4..7] }
      it 'serializes the request id' do
        expect(field).to be_int32(message.request_id)
      end
    end

    describe 'response to' do
      let(:field) { bytes.to_s[8..11] }
      it 'serializes the response to' do
        expect(field).to be_int32(0)
      end
    end

    describe 'op code' do
      let(:field) { bytes.to_s[12..15] }
      it 'serializes the op code' do
        expect(field).to be_int32(opcode)
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
mongo-2.21.0 spec/support/shared/protocol.rb
mongo-2.20.1 spec/support/shared/protocol.rb
mogno-2.20.0 spec/support/shared/protocol.rb
mogno-1.0.0 spec/support/shared/protocol.rb
mongo-2.20.0 spec/support/shared/protocol.rb
mongo-2.19.3 spec/support/shared/protocol.rb
mongo-2.19.2 spec/support/shared/protocol.rb
mongo-2.19.1 spec/support/shared/protocol.rb
mongo-2.19.0 spec/support/shared/protocol.rb