cleanup service home directories since left overs can break the test
[oweals/gnunet.git] / src / integration-tests / test_integration_restart.py.in
index f8becb66a417021593f8e0ee3dc51da93c2d8386..49a9672280b10c383d67fe6558a48a08721453fe 100755 (executable)
@@ -24,7 +24,6 @@ import subprocess
 import re
 import shutil
 import time
-import pexpect
 from gnunet_testing import Peer
 from gnunet_testing import Test
 from gnunet_testing import Check
@@ -45,17 +44,34 @@ from gnunet_testing import *
 
 testname = "test_integration_restart"
 verbose = False
-check_timeout = 30
+check_timeout = 180
 
+if os.name == "nt":
+  tmp = os.getenv ("TEMP")
+else:
+  tmp = "/tmp"
 
 def cleanup ():
-       if os.name == "nt":
-           shutil.rmtree (os.path.join (os.getenv ("TEMP"), "gnunet-test-fs-py-ns"), True)
-           shutil.rmtree (os.path.join (os.getenv ("TEMP"), "c_no_nat_client"), True)
-       else:
-           shutil.rmtree ("/tmp/c_bootstrap_server/", True)
-           shutil.rmtree ("/tmp/c_no_nat_client/", True)    
-
+    retries = 10
+    path = os.path.join (tmp, "c_bootstrap_server")  
+    test.p ("Removing " + path)      
+    while ((os.path.exists(path)) and (retries > 0)):
+        shutil.rmtree ((path), False)
+        time.sleep (1)
+        retries -= 1
+    if (os.path.exists(path)):
+        test.p ("Failed to remove " + path) 
+        
+    
+    retries = 10
+    path = os.path.join (tmp, "c_no_nat_client")  
+    test.p ("Removing " + path)      
+    while ((os.path.exists(path)) and (retries > 0)):
+        shutil.rmtree ((path), False)
+        time.sleep (1)
+        retries -= 1
+    if (os.path.exists(path)):
+        test.p ("Failed to remove " + path) 
 
 def success_restart_cont (check):
        global success 
@@ -68,7 +84,7 @@ def success_restart_cont (check):
 def fail_restart_cont (check):    
        global success 
        success = False;
-       check.eval(True)   
+       check.evaluate(True)   
     
 
 def success_connect_cont (check):
@@ -85,40 +101,40 @@ def success_connect_cont (check):
        check = Check (test)
        check.add (StatisticsCondition (client, 'transport', '# peers connected',1))
        check.add (StatisticsCondition (client, 'core', '# neighbour entries allocated',1))  
-       check.add (StatisticsCondition (client, 'core', '# entries in session map',1))
+       check.add (StatisticsCondition (client, 'core', '# peers connected',1))
        check.add (StatisticsCondition (client, 'topology', '# peers connected',1))
        check.add (StatisticsCondition (client, 'fs', '# peers connected',1))
        
        check.add (StatisticsCondition (server, 'transport', '# peers connected',1))
        check.add (StatisticsCondition (server, 'core', '# neighbour entries allocated',1))  
-       check.add (StatisticsCondition (server, 'core', '# entries in session map',1))
+       check.add (StatisticsCondition (server, 'core', '# peers connected',1))
        check.add (StatisticsCondition (server, 'topology', '# peers connected',1))
        check.add (StatisticsCondition (server, 'fs', '# peers connected',1))  
        
-       check.run_blocking (10, success_restart_cont, fail_restart_cont)
+       check.run_blocking (check_timeout, success_restart_cont, fail_restart_cont)
 
 
 def fail_connect_cont (check):    
     global success 
     success= False;
-    check.eval(True)
+    check.evaluate(True)
 
 
 def check_connect ():
        check = Check (test)
        check.add (StatisticsCondition (client, 'transport', '# peers connected',1))
        check.add (StatisticsCondition (client, 'core', '# neighbour entries allocated',1))  
-       check.add (StatisticsCondition (client, 'core', '# entries in session map',1))
+       check.add (StatisticsCondition (client, 'core', '# peers connected',1))
        check.add (StatisticsCondition (client, 'topology', '# peers connected',1))
        check.add (StatisticsCondition (client, 'fs', '# peers connected',1))
        
        check.add (StatisticsCondition (server, 'transport', '# peers connected',1))
        check.add (StatisticsCondition (server, 'core', '# neighbour entries allocated',1))  
-       check.add (StatisticsCondition (server, 'core', '# entries in session map',1))
+       check.add (StatisticsCondition (server, 'core', '# peers connected',1))
        check.add (StatisticsCondition (server, 'topology', '# peers connected',1))
        check.add (StatisticsCondition (server, 'fs', '# peers connected',1))  
        
-       check.run_blocking (10, success_connect_cont, fail_connect_cont)
+       check.run_blocking (check_timeout, success_connect_cont, fail_connect_cont)
 
 # 
 # Test execution
@@ -133,7 +149,7 @@ def run ():
        success = False
        
        test = Test ('test_integration_disconnect', verbose)
-       
+       cleanup ()
        server = Peer(test, './confs/c_bootstrap_server.conf');
        server.start();