Sha256: 2adfa088c3e40bf81337f397f09e07fc051c3e5d7dccbbbcea9d041c932b7624

Contents?: true

Size: 643 Bytes

Versions: 12

Compression:

Stored size: 643 Bytes

Contents

# frozen_string_literal: true

require_relative 'helper'

class SocketTest < MiniTest::Test
  def setup
    super
  end

  def test_tcp
    port = rand(1234..5678)
    server = TCPServer.new('127.0.0.1', port)

    server_fiber = spin do
      while (socket = server.accept)
        spin do
          while (data = socket.gets(8192))
            socket << data
          end
        end
      end
    end

    snooze
    client = TCPSocket.new('127.0.0.1', port)
    client.write("1234\n")
    assert_equal "1234\n", client.readpartial(8192)
    client.close
  ensure
    server_fiber&.stop
    server_fiber&.await
    server&.close
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
polyphony-0.45.0 test/test_socket.rb
polyphony-0.44.0 test/test_socket.rb
polyphony-0.43.11 test/test_socket.rb
polyphony-0.43.10 test/test_socket.rb
polyphony-0.43.9 test/test_socket.rb
polyphony-0.43.8 test/test_socket.rb
polyphony-0.43.5 test/test_socket.rb
polyphony-0.43.4 test/test_socket.rb
polyphony-0.43.3 test/test_socket.rb
polyphony-0.43.2 test/test_socket.rb
polyphony-0.43.1 test/test_socket.rb
polyphony-0.43 test/test_socket.rb