Files
flexnbd-c/tests/acceptance/fakes/source/close_after_connect.rb
2012-07-03 10:59:31 +01:00

25 lines
691 B
Ruby
Executable File

#!/usr/bin/env ruby
# Connects to the destination server, then immediately disconnects,
# simulating a source crash.
#
# It then connects again, to check that the destination is still
# listening.
require 'flexnbd/fake_source'
include FlexNBD::FakeSource
addr, port = *ARGV
connect( addr, port, "Failed to connect" ).close
# Sleep to be sure we don't try to connect too soon. That wouldn't
# be a problem for the destination, but it would prevent us from
# determining success or failure here in the case where we try to
# reconnect before the destination has tidied up after the first
# thread went away.
sleep(0.5)
connect( addr, port, "Failed to reconnect" ).close
exit 0