leaks
[oweals/gnunet.git] / src / topology / test_gnunet_service_topology.c
index b2790c0c9d6d33344947066d77c115f422724c07..b4083055921996e5301449fd9cd956bba0ed7502 100644 (file)
@@ -26,7 +26,7 @@
 
 #define VERBOSE GNUNET_YES
 
-#define NUM_PEERS 10
+#define NUM_PEERS 2
 
 /**
  * How long until we give up on connecting the peers?
@@ -49,9 +49,24 @@ static struct GNUNET_TESTING_Daemon *last;
 static struct GNUNET_SCHEDULER_Handle *sched;
 
 
+static void
+clean_up_task (void *cls,
+                const struct GNUNET_SCHEDULER_TaskContext *tc)
+{
+  GNUNET_TESTING_daemons_stop (pg);
+  ok = 0;     
+}
+
+
 static void 
 notify_connect_complete(void *cls,
-                       const char *emsg)
+                        const struct GNUNET_PeerIdentity *first,
+                        const struct GNUNET_PeerIdentity *second,
+                        const struct GNUNET_CONFIGURATION_Handle *first_cfg,
+                        const struct GNUNET_CONFIGURATION_Handle *second_cfg,
+                        struct GNUNET_TESTING_Daemon *first_daemon,
+                        struct GNUNET_TESTING_Daemon *second_daemon,
+                        const char *emsg)
 {
   if (NULL != emsg)
     {
@@ -66,9 +81,11 @@ notify_connect_complete(void *cls,
     {
       /* FIXME: check that topology adds a few more links
         in addition to those that were seeded */
-      sleep (100);
-      GNUNET_TESTING_daemons_stop (pg);
-      ok = 0;     
+      /* For now, sleep so we can have the daemon do some work */
+      GNUNET_SCHEDULER_add_delayed (sched,
+                                   GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 5),
+                                   &clean_up_task,
+                                   NULL);
     }
 }
 
@@ -117,7 +134,7 @@ run (void *cls,
   peers_left = NUM_PEERS;
   pg = GNUNET_TESTING_daemons_start (sched, cfg, 
                                     peers_left,
-                                    &my_cb, NULL, NULL);
+                                    &my_cb, NULL, NULL, NULL, NULL);
   GNUNET_assert (pg != NULL);
 }
 
@@ -154,7 +171,7 @@ main (int argc, char *argv[])
 #endif
                     NULL);
   ret = check ();
-  sleep (1);
+  sleep (1); /* FIXME: needed? */
   GNUNET_DISK_directory_remove ("/tmp/test-gnunet-topology");
   return ret;
 }