summaryrefslogtreecommitdiff
path: root/spec/ruby/library/socket/tcpsocket/recv_spec.rb
blob: f380db670dc7fb77620ead6808e4a7de34b3dc4e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
require_relative '../spec_helper'
require_relative '../fixtures/classes'

describe 'TCPSocket#recv' do
  SocketSpecs.each_ip_protocol do |family, ip_address|
    before do
      @server = TCPServer.new(ip_address, 0)
      @client = TCPSocket.new(ip_address, @server.connect_address.ip_port)
    end

    after do
      @client.close
      @server.close
    end

    it 'returns the message data' do
      @client.write('hello')

      socket = @server.accept

      begin
        socket.recv(5).should == 'hello'
      ensure
        socket.close
      end
    end
  end
end