gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r21653 - gnunet/src/integration-tests


From: gnunet
Subject: [GNUnet-SVN] r21653 - gnunet/src/integration-tests
Date: Thu, 31 May 2012 13:58:18 +0200

Author: wachs
Date: 2012-05-31 13:58:18 +0200 (Thu, 31 May 2012)
New Revision: 21653

Added:
   gnunet/src/integration-tests/test_connection_stability.c
   gnunet/src/integration-tests/test_connection_stability.conf
Modified:
   gnunet/src/integration-tests/Makefile.am
Log:
- base for a testing based connection stability test


Modified: gnunet/src/integration-tests/Makefile.am
===================================================================
--- gnunet/src/integration-tests/Makefile.am    2012-05-31 11:47:45 UTC (rev 
21652)
+++ gnunet/src/integration-tests/Makefile.am    2012-05-31 11:58:18 UTC (rev 
21653)
@@ -35,7 +35,10 @@
 endif
 # test_integration_disconnect.py 
 
+check_PROGRAMS = \
+       test_connection_stability
 
+
 if ENABLE_TEST_RUN
 TESTS = \
  $(check_SCRIPTS)  
@@ -112,7 +115,13 @@
        $(do_subst) < 
$(srcdir)/test_integration_connection_values_tcp_udp_http.py.in > 
test_integration_connection_values_tcp_udp_http.py
        chmod +x test_integration_connection_values_tcp_udp_http.py             
 
+test_connection_stability_SOURCES = \
+ test_connection_stability.c
+test_connection_stability_LDADD = \
+ $(top_builddir)/src/testing/libgnunettesting.la \
+ $(top_builddir)/src/util/libgnunetutil.la  
 
+
 EXTRA_DIST = \
    gnunet_testing.py.in \
    gnunet_pyexpect.py.in \
@@ -137,6 +146,7 @@
    confs/c_no_nat_client_http_2.conf\
    confs/c_no_nat_client_http.conf \
    confs/c_no_nat_client_http_2.conf \
+   test_connection_stability.conf \
    hostkeys/0000-hostkey \
    hostkeys/0001-hostkey \
    hostkeys/0002-hostkey \

Added: gnunet/src/integration-tests/test_connection_stability.c
===================================================================
--- gnunet/src/integration-tests/test_connection_stability.c                    
        (rev 0)
+++ gnunet/src/integration-tests/test_connection_stability.c    2012-05-31 
11:58:18 UTC (rev 21653)
@@ -0,0 +1,126 @@
+/*
+     This file is part of GNUnet.
+     (C) 2009 Christian Grothoff (and other contributing authors)
+
+     GNUnet is free software; you can redistribute it and/or modify
+     it under the terms of the GNU General Public License as published
+     by the Free Software Foundation; either version 3, or (at your
+     option) any later version.
+
+     GNUnet is distributed in the hope that it will be useful, but
+     WITHOUT ANY WARRANTY; without even the implied warranty of
+     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+     General Public License for more details.
+
+     You should have received a copy of the GNU General Public License
+     along with GNUnet; see the file COPYING.  If not, write to the
+     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+     Boston, MA 02111-1307, USA.
+*/
+/**
+ * @file integretion-tests/test_connection_stability.c
+ * @brief testcase for connection stability
+ */
+#include "platform.h"
+#include "gnunet_testing_lib.h"
+
+#define VERBOSE GNUNET_YES
+
+#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 300)
+
+static int ok;
+
+static void
+end_cb (void *cls, const char *emsg)
+{
+  if (emsg != NULL)
+  {
+    GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "Ending with error: %s\n", emsg);
+    ok = 1;
+  }
+  else
+  {
+#if VERBOSE
+    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Daemon terminated, will now 
exit.\n");
+#endif
+    ok = 0;
+  }
+}
+
+
+
+void
+do_shutdown (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+{
+  struct GNUNET_TESTING_Daemon *d = cls;
+
+  GNUNET_TESTING_daemon_stop (d, TIMEOUT, &end_cb, NULL, GNUNET_YES, 
GNUNET_NO);
+}
+
+
+static void
+my_cb (void *cls, const struct GNUNET_PeerIdentity *id,
+       const struct GNUNET_CONFIGURATION_Handle *cfg,
+       struct GNUNET_TESTING_Daemon *d, const char *emsg)
+{
+  GNUNET_assert (id != NULL);
+#if VERBOSE
+  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+              "Daemon `%s' started, will now stop it.\n", GNUNET_i2s (id));
+#endif
+  GNUNET_SCHEDULER_add_now (&do_shutdown, d);
+}
+
+
+static void
+run (void *cls, char *const *args, const char *cfgfile,
+     const struct GNUNET_CONFIGURATION_Handle *cfg)
+{
+  struct GNUNET_TESTING_Daemon *d;
+
+  ok = 1;
+#if VERBOSE
+  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Starting daemon.\n");
+#endif
+  d = GNUNET_TESTING_daemon_start (cfg, TIMEOUT, GNUNET_NO, NULL, NULL, 0, 
NULL,
+                                   NULL, NULL, &my_cb, NULL);
+  GNUNET_assert (d != NULL);
+}
+
+static int
+check ()
+{
+  char *const argv[] = { "test_connection_stability",
+    "-c",
+    "test_connection_stability.conf",
+#if VERBOSE
+    "-L", "DEBUG",
+#endif
+    NULL
+  };
+  struct GNUNET_GETOPT_CommandLineOption options[] = {
+    GNUNET_GETOPT_OPTION_END
+  };
+  GNUNET_PROGRAM_run ((sizeof (argv) / sizeof (char *)) - 1, argv,
+                      "test-testing", "nohelp", options, &run, &ok);
+  return ok;
+}
+
+int
+main (int argc, char *argv[])
+{
+  int ret;
+
+  GNUNET_log_setup ("test_connection_stability",
+#if VERBOSE
+                    "DEBUG",
+#else
+                    "WARNING",
+#endif
+                    NULL);
+  ret = check ();
+
+  return ret;
+}
+
+/* end of test_connection_stability.c */

Added: gnunet/src/integration-tests/test_connection_stability.conf
===================================================================
--- gnunet/src/integration-tests/test_connection_stability.conf                 
        (rev 0)
+++ gnunet/src/integration-tests/test_connection_stability.conf 2012-05-31 
11:58:18 UTC (rev 21653)
@@ -0,0 +1,82 @@
+[PATHS]
+SERVICEHOME = /tmp/test_connection_stability/
+DEFAULTCONFIG = test_connection_stability.conf
+
+[resolver]
+PORT = 2564
+
+[transport]
+PORT = 2565
+PLUGINS = tcp
+
+[arm]
+PORT = 2566
+DEFAULTSERVICES = 
+
+[statistics]
+PORT = 2567
+
+[transport-tcp]
+PORT = 2568
+BINDTO = 127.0.0.1
+
+[peerinfo]
+PORT = 2569
+
+[core]
+PORT = 2570
+
+[testing]
+NUM_PEERS = 5
+WEAKRANDOM = YES
+F2F = YES
+HOSTKEYSFILE = ../../contrib/testing_hostkeys.dat
+
+[dht]
+AUTOSTART = NO
+
+[nat]
+DISABLEV6 = YES
+ENABLE_UPNP = NO
+BEHIND_NAT = NO
+ALLOW_NAT = NO
+INTERNAL_ADDRESS = 127.0.0.1
+EXTERNAL_ADDRESS = 127.0.0.1
+USE_LOCALADDR = NO
+
+[dns]
+AUTOSTART = NO
+
+[nse]
+AUTOSTART = NO
+
+[mesh]
+AUTOSTART = NO
+
+[datastore]
+AUTOSTART = NO
+
+[fs]
+AUTOSTART = NO
+
+[dv]
+AUTOSTART = NO
+
+[chat]
+AUTOSTART = NO
+
+[vpn]
+AUTOSTART = NO
+
+[gns]
+AUTOSTART = NO
+
+[namestore]
+AUTOSTART = NO
+
+[lockmanager]
+AUTOSTART = NO
+
+[arm]
+DEFAULTSERVICES = core
+




reply via email to

[Prev in Thread] Current Thread [Next in Thread]