got integration tests to pass, fixes #5560
authorChristian Grothoff <christian@grothoff.org>
Tue, 19 Feb 2019 00:59:00 +0000 (01:59 +0100)
committerChristian Grothoff <christian@grothoff.org>
Tue, 19 Feb 2019 00:59:00 +0000 (01:59 +0100)
src/integration-tests/test_integration_bootstrap_and_connect.py.in
src/integration-tests/test_integration_disconnect_nat.py.in
src/integration-tests/test_integration_reconnect.py.in
src/integration-tests/test_integration_reconnect_nat.py.in
src/pq/pq_result_helper.c
src/sq/sq.c

index 560a429fd0603c75966e24f6ded2ca9aa135f80c..f0de1c0cd3181e841e2f942f3831a37726c232a6 100755 (executable)
@@ -11,7 +11,7 @@
 #    WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 #    Affero General Public License for more details.
-#   
+#
 #    You should have received a copy of the GNU Affero General Public License
 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
index 825c1cfa12cbc1f8fd9f2d9bb0e156b645438086..601586f47eefb2f85493b4aabacff53091eb2ffc 100755 (executable)
@@ -11,7 +11,7 @@
 #    WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 #    Affero General Public License for more details.
-#   
+#
 #    You should have received a copy of the GNU Affero General Public License
 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
index 573ae221a8fc9b920ced238edbd1a4ab9a09ca67..e8abacd4871aae75a1c0902b6746f416ea263617 100755 (executable)
 #    WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 #    Affero General Public License for more details.
-#   
+#
 #    You should have received a copy of the GNU Affero General Public License
 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
 #    SPDX-License-Identifier: AGPL3.0-or-later
 #
-# 
+#
 from __future__ import print_function
 import sys
 import os
@@ -30,13 +30,13 @@ 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
 # successfully connects to the server. When both peers are connected
-# in transport, core, topology, fs, botth peers are shutdown and restarted 
+# in transport, core, topology, fs, botth peers are shutdown and restarted
 #
 # Conditions for successful exit:
 # Both peers have 1 connected peer in transport, core, topology, fs after restart
@@ -68,68 +68,68 @@ def cleanup_onerror (function, path, excinfo):
 
 def cleanup ():
     retries = 10
-    path = os.path.join (tmp, "c_bootstrap_server")  
-    test.p ("Removing " + path)      
+    path = os.path.join (tmp, "c_bootstrap_server")
+    test.p ("Removing " + path)
     while ((os.path.exists(path)) and (retries > 0)):
         shutil.rmtree ((path), False, cleanup_onerror)
         time.sleep (1)
         retries -= 1
     if (os.path.exists(path)):
-        test.p ("Failed to remove " + path) 
-        
-    
+        test.p ("Failed to remove " + path)
+
+
     retries = 10
-    path = os.path.join (tmp, "c_no_nat_client")  
-    test.p ("Removing " + path)      
+    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, cleanup_onerror)
         time.sleep (1)
         retries -= 1
     if (os.path.exists(path)):
-        test.p ("Failed to remove " + path) 
+        test.p ("Failed to remove " + path)
 
 def success_restart_cont (check):
-       global success 
+       global success
        print('Peers connected successfully after restart')
        server.stop ()
        client.stop ()
-       success = True; 
+       success = True;
 
 
-def fail_restart_cont (check):    
-       global success 
+def fail_restart_cont (check):
+       global success
        success = False;
        print('Peers failed to connect after restart')
-       check.evaluate(True)   
-    
+       check.evaluate(True)
+
 
 def success_connect_cont (check):
        print('Peers connected successfully')
        server.stop ()
        client.stop ()
-       
+
        time.sleep(5)
-       
+
        test.p ('Restarting client & server')
        server.start ()
        client.start ()
-       
+
        check = Check (test)
        check.add (StatisticsCondition (client, 'transport', '# peers connected',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', '# peers connected',1))
        check.add (StatisticsCondition (server, 'topology', '# peers connected',1))
-       check.add (StatisticsCondition (server, 'fs', '# peers connected',1))  
-       
+       check.add (StatisticsCondition (server, 'fs', '# peers connected',1))
+
        check.run_blocking (check_timeout, success_restart_cont, fail_restart_cont)
 
 
-def fail_connect_cont (check):    
-       global success 
+def fail_connect_cont (check):
+       global success
        success= False;
        print('Peers failed to connect')
        check.evaluate(True)
@@ -141,28 +141,28 @@ def check_connect ():
        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', '# peers connected',1))
        check.add (StatisticsCondition (server, 'topology', '# peers connected',1))
-       check.add (StatisticsCondition (server, 'fs', '# 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 success
        global server
-       global client  
-       
+       global client
+
        print('Test was aborted!')
        if (None != server):
                server.stop ()
-       if (None != client):            
+       if (None != client):
                client.stop ()
        cleanup ()
        sys.exit(success)
@@ -172,68 +172,66 @@ def run ():
        global test
        global server
        global client
-       
+
        success = False
        server = None
-       client = None   
+       client = None
 
        for sig in signals:
                signal.signal(sig, SigHandler)
-       
-       
+
+
        test = Test ('test_integration_disconnect', verbose)
        cleanup ()
        server = Peer(test, './confs/c_bootstrap_server.conf');
        server.start();
-       
+
        client = Peer(test, './confs/c_no_nat_client.conf');
        client.start();
-       
+
 
        if (True != server.start()):
                print('Failed to start server')
                if (None != server):
                        server.stop ()
-               if (None != server):            
+               if (None != server):
                        client.stop ()
                cleanup ()
                sys.exit(success)
-               
+
        # Give the server time to start
        time.sleep(5)
-                       
+
        if (True != client.start()):
                print('Failed to start client')
                if (None != server):
                        server.stop ()
-               if (None != server):            
+               if (None != server):
                        client.stop ()
                cleanup ()
                sys.exit(success)
-       
+
        check_connect ()
-       
-       server.stop ()    
+
+       server.stop ()
        client.stop ()
        cleanup ()
-       
+
        if (success == False):
                print ('Test failed')
                return True
        else:
                return False
 
-       
+
 try:
     run ()
-except (KeyboardInterrupt, SystemExit):    
+except (KeyboardInterrupt, SystemExit):
     print('Test interrupted')
     server.stop ()
     client.stop ()
     cleanup ()
 if (success == False):
-       sys.exit(1)   
+       sys.exit(1)
 else:
-       sys.exit(0)    
-
-       
+       sys.exit(0)
index 5b3f34d020e7e3026fcb8bda667b86c1ccf43ddb..61d2ea9667a5df0a072c30e704481fe17addf794 100755 (executable)
@@ -11,7 +11,7 @@
 #    WITHOUT ANY WARRANTY; without even the implied warranty of
 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 #    Affero General Public License for more details.
-#   
+#
 #    You should have received a copy of the GNU Affero General Public License
 #    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #
index b0f0a8a6b283fd1e4c3e07228b2d43d96fb56823..336ca8c4253556f8de7a2389ab8a72f4eb76724a 100644 (file)
@@ -11,7 +11,7 @@
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Affero General Public License for more details.
+
   You should have received a copy of the GNU Affero General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
index 36200aa26bb0494ae9ebd567de63908b5f99b92c..e74071b81d430f6e4a84062c7637766563c39776 100644 (file)
@@ -11,7 +11,7 @@
   WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   Affero General Public License for more details.
+
   You should have received a copy of the GNU Affero General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.