1
0
Fork 0
mirror of https://github.com/puma/puma.git synced 2022-11-09 13:48:40 -05:00
puma--puma/test/test_tcp_rack.rb
schneems 0d28652c3e Avoid hardcoding ports
When a test that boots a server fails it may not properly close out the port. When this happens there is a cascading failure as all other tests that use that port also fail. It becomes hard to find the actual failure reason. This commit uses a new number of every time port is used.
2018-03-20 11:25:26 -05:00

34 lines
597 B
Ruby

require_relative "helper"
class TestTCPRack < Minitest::Test
def setup
@port = UniquePort.call
@host = "127.0.0.1"
@events = Puma::Events.new STDOUT, STDERR
@server = Puma::Server.new nil, @events
end
def teardown
@server.stop(true)
end
def test_passes_the_socket
@server.tcp_mode!
body = "We sell hats for a discount!\n"
@server.app = proc do |env, socket|
socket << body
socket.close
end
@server.add_tcp_listener @host, @port
@server.run
sock = TCPSocket.new @host, @port
assert_equal body, sock.read
end
end