Merge pull request #1528 from dsander/fix-random-mqtt-failures

Use a random port in MQTT::FakeServer
This commit is contained in:
Dominik Sander 2016-05-31 10:18:52 +02:00
commit 06a6251de6
2 changed files with 3 additions and 4 deletions

View file

@ -7,7 +7,7 @@ describe Agents::MqttAgent do
before :each do
@error_log = StringIO.new
@server = MQTT::FakeServer.new(41234, '127.0.0.1')
@server = MQTT::FakeServer.new('127.0.0.1')
@server.logger = Logger.new(@error_log)
@server.logger.level = Logger::DEBUG
@server.start

View file

@ -35,8 +35,7 @@ class MQTT::FakeServer
#
# If no port is given, bind to a random port number
# If no bind address is given, bind to localhost
def initialize(port=nil, bind_address='127.0.0.1')
@port = port
def initialize(bind_address='127.0.0.1')
@address = bind_address
end
@ -47,7 +46,7 @@ class MQTT::FakeServer
# Start the thread and open the socket that will process client connections
def start
@socket ||= TCPServer.new(@address, @port)
@socket ||= TCPServer.new(@address, 0)
@address = @socket.addr[3]
@port = @socket.addr[1]
@thread ||= Thread.new do