From 1cc13d48eb2b1fd1763a49abf70816ec8d9feb57 Mon Sep 17 00:00:00 2001 From: Nils Gillmann Date: Wed, 23 May 2018 08:11:31 +0000 Subject: integration-tests disconnect_nat flake8 Signed-off-by: Nils Gillmann --- .../test_integration_disconnect_nat.py.in | 324 +++++++++++---------- 1 file changed, 163 insertions(+), 161 deletions(-) (limited to 'src/integration-tests') diff --git a/src/integration-tests/test_integration_disconnect_nat.py.in b/src/integration-tests/test_integration_disconnect_nat.py.in index 611255a09..12c268bd6 100755 --- a/src/integration-tests/test_integration_disconnect_nat.py.in +++ b/src/integration-tests/test_integration_disconnect_nat.py.in @@ -17,7 +17,7 @@ # Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, # Boston, MA 02110-1301, USA. # -# +# import sys import signal import os @@ -29,8 +29,8 @@ from gnunet_testing import Peer from gnunet_testing import Test from gnunet_testing import Check from gnunet_testing import Condition -from gnunet_testing import * - +from gnunet_testing import * + # # This test tests if a fresh peer bootstraps from a hostlist server and then @@ -40,173 +40,175 @@ from gnunet_testing import * # Conditions for successful exit: # Client peer has 0 connected peer in transport, core, topology, dht, fs -#definitions +# definitions testname = "test_integration_disconnect" verbose = True check_timeout = 180 if os.name == "nt": - tmp = os.getenv ("TEMP") - signals = [signal.SIGTERM, signal.SIGINT] + tmp = os.getenv("TEMP") + signals = [signal.SIGTERM, signal.SIGINT] else: - tmp = "/tmp" - signals = [signal.SIGTERM, signal.SIGINT, signal.SIGHUP, signal.SIGQUIT] - -def cleanup_onerror (function, path, excinfo): - import stat - if not os.path.exists (path): - pass - elif not os.access(path, os.W_OK): - # Is the error an access error ? - os.chmod (path, stat.S_IWUSR) - function (path) - else: - raise - -def cleanup (): - shutil.rmtree (os.path.join (tmp, "c_bootstrap_server"), False, cleanup_onerror) - shutil.rmtree (os.path.join (tmp, "c_nat_client"), False, cleanup_onerror) - - -def success_disconnect_cont (check): - print('Peers disconnected successfully') - global success - success = True; - - -def fail_disconnect_cont (check): - global success - success = False; - print('Peers failed to disconnect') - check.evaluate(True) - -def check_disconnect (): - global server - global nat_client - test.p ('Shutting down nat client') - nat_client.stop () - check = Check (test) - check.add (StatisticsCondition (server, 'transport', '# peers connected',0)) - check.add (StatisticsCondition (server, 'core', '# peers connected',0)) - check.add (StatisticsCondition (server, 'topology', '# peers connected',0)) - check.add (StatisticsCondition (server, 'dht', '# peers connected',0)) - check.add (StatisticsCondition (server, 'fs', '# peers connected',0)) - check.run_blocking (check_timeout, success_disconnect_cont, fail_disconnect_cont) - - -def success_connect_cont (check): - print('Peers connected successfully') - check_disconnect () - - -def fail_connect_cont (check): - global success - success= False - print('Peers failed to connected!') - check.evaluate(True) - - -def check_connect (): - global server - global nat_client - check = Check (test) - check.add (StatisticsCondition (nat_client, 'transport', '# peers connected',1)) - check.add (StatisticsCondition (nat_client, 'core', '# peers connected',1)) - check.add (StatisticsCondition (nat_client, 'topology', '# peers connected',1)) - check.add (StatisticsCondition (nat_client, 'dht', '# peers connected',1)) - check.add (StatisticsCondition (nat_client, 'fs', '# peers connected',1)) - - check.add (StatisticsCondition (server, 'transport', '# peers connected',1)) - check.add (StatisticsCondition (server, 'core', '# peers connected',1)) - check.add (StatisticsCondition (server, 'topology', '# peers connected',1)) - check.add (StatisticsCondition (server, 'dht', '# peers connected',1)) - check.add (StatisticsCondition (server, 'fs', '# peers connected',1)) - - check.run_blocking (check_timeout, success_connect_cont, fail_connect_cont) - -# + tmp = "/tmp" + signals = [signal.SIGTERM, signal.SIGINT, signal.SIGHUP, signal.SIGQUIT] + + +def cleanup_onerror(function, path, excinfo): + import stat + if not os.path.exists(path): + pass + elif not os.access(path, os.W_OK): + # Is the error an access error ? + os.chmod(path, stat.S_IWUSR) + function(path) + else: + raise + + +def cleanup(): + shutil.rmtree(os.path.join(tmp, "c_bootstrap_server"), False, cleanup_onerror) + shutil.rmtree(os.path.join(tmp, "c_nat_client"), False, cleanup_onerror) + + +def success_disconnect_cont(check): + print('Peers disconnected successfully') + global success + success = True + + +def fail_disconnect_cont(check): + global success + success = False; + print('Peers failed to disconnect') + check.evaluate(True) + + +def check_disconnect(): + global server + global nat_client + test.p('Shutting down nat client') + nat_client.stop() + check = Check(test) + check.add(StatisticsCondition(server, 'transport', '# peers connected', 0)) + check.add(StatisticsCondition(server, 'core', '# peers connected', 0)) + check.add(StatisticsCondition(server, 'topology', '# peers connected', 0)) + check.add(StatisticsCondition(server, 'dht', '# peers connected', 0)) + check.add(StatisticsCondition(server, 'fs', '# peers connected', 0)) + check.run_blocking(check_timeout, success_disconnect_cont, fail_disconnect_cont) + + +def success_connect_cont(check): + print('Peers connected successfully') + check_disconnect() + + +def fail_connect_cont(check): + global success + success = False + print('Peers failed to connected!') + check.evaluate(True) + + +def check_connect(): + global server + global nat_client + check = Check(test) + check.add(StatisticsCondition(nat_client, 'transport', '# peers connected', 1)) + check.add(StatisticsCondition(nat_client, 'core', '# peers connected', 1)) + check.add(StatisticsCondition(nat_client, 'topology', '# peers connected', 1)) + check.add(StatisticsCondition(nat_client, 'dht', '# peers connected', 1)) + check.add(StatisticsCondition(nat_client, 'fs', '# peers connected', 1)) + + check.add(StatisticsCondition(server, 'transport', '# peers connected', 1)) + check.add(StatisticsCondition(server, 'core', '# peers connected', 1)) + check.add(StatisticsCondition(server, 'topology', '# peers connected', 1)) + check.add(StatisticsCondition(server, 'dht', '# peers connected', 1)) + check.add(StatisticsCondition(server, 'fs', '# peers connected', 1)) + + check.run_blocking(check_timeout, success_connect_cont, fail_connect_cont) + + +# # Test execution -# - -def SigHandler(signum = None, frame = None): - global success - global server - global nat_client - - print('Test was aborted!') - if (None != server): - server.stop () - if (None != nat_client): - nat_client.stop () - cleanup () - sys.exit(success) - -def run (): - global success - global test - global server - global nat_client - - server = None - nat_client = None - success = False - - for sig in signals: - signal.signal(sig, SigHandler) - - test = Test ('test_integration_bootstrap_and_connect.py', verbose) - cleanup () - - server = Peer(test, './confs/c_bootstrap_server.conf'); - nat_client = Peer(test, './confs/c_nat_client.conf'); - - if (True != server.start()): - print('Failed to start server') - if (None != server): - server.stop () - cleanup () - sys.exit(success) - - # Give the server time to start - time.sleep(5) - - if (True != nat_client.start()): - print('Failed to start nat_client') - if (None != server): - server.stop () - if (None != nat_client): - nat_client.stop () - cleanup () - sys.exit(success) - - if ((nat_client.started == True) and (server.started == True)): - test.p ('Peers started, running check') - time.sleep(5) - check_connect () - server.stop () - nat_client.stop () - - cleanup () - - if (success == False): - print ('Test failed') - return False - else: - return True +# + +def SigHandler(signum=None, frame=None): + global success + global server + global nat_client + + print('Test was aborted!') + if (None != server): + server.stop() + if (None != nat_client): + nat_client.stop() + cleanup() + sys.exit(success) + + +def run(): + global success + global test + global server + global nat_client + + server = None + nat_client = None + success = False + + for sig in signals: + signal.signal(sig, SigHandler) + + test = Test('test_integration_bootstrap_and_connect.py', verbose) + cleanup() + + server = Peer(test, './confs/c_bootstrap_server.conf') + nat_client = Peer(test, './confs/c_nat_client.conf') + + if (True != server.start()): + print('Failed to start server') + if (None != server): + server.stop() + cleanup() + sys.exit(success) + + # Give the server time to start + time.sleep(5) + + if (True != nat_client.start()): + print('Failed to start nat_client') + if (None != server): + server.stop() + if (None != nat_client): + nat_client.stop() + cleanup() + sys.exit(success) + + if ((nat_client.started == True) and (server.started == True)): + test.p('Peers started, running check') + time.sleep(5) + check_connect() + server.stop() + nat_client.stop() + + cleanup() + + if (success == False): + print('Test failed') + return False + else: + return True + try: - run () -except (KeyboardInterrupt, SystemExit): - print('Test interrupted') - server.stop () - nat_client.stop () - cleanup () + run() +except(KeyboardInterrupt, SystemExit): + print('Test interrupted') + server.stop() + nat_client.stop() + cleanup() if (success == False): - sys.exit(1) + sys.exit(1) else: - sys.exit(0) - - - - + sys.exit(0) -- cgit v1.2.3