aboutsummaryrefslogtreecommitdiff
path: root/src/ats
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2012-06-23 22:07:20 +0000
committerChristian Grothoff <christian@grothoff.org>2012-06-23 22:07:20 +0000
commit8e6c69b6322f9d3f3f2a32040431a3b056302132 (patch)
tree20a520a7e57713ea5a6745bf3d9483dec4ed79ae /src/ats
parentcd3bdd05727cac171d79af6240f749ecc96cafc1 (diff)
downloadgnunet-8e6c69b6322f9d3f3f2a32040431a3b056302132.tar.gz
gnunet-8e6c69b6322f9d3f3f2a32040431a3b056302132.zip
-removing dead old code
Diffstat (limited to 'src/ats')
-rw-r--r--src/ats/Makefile.am10
-rw-r--r--src/ats/test_ats_api_bandwidth_consumption.c78
-rw-r--r--src/ats/test_ats_api_reset_backoff.c70
-rw-r--r--src/ats/test_ats_api_scheduling.c65
-rw-r--r--src/ats/test_ats_api_scheduling_add_address.c66
-rw-r--r--src/ats/test_ats_api_scheduling_destroy_address.c69
-rw-r--r--src/ats/test_ats_api_scheduling_destroy_session.c69
7 files changed, 99 insertions, 328 deletions
diff --git a/src/ats/Makefile.am b/src/ats/Makefile.am
index 889650bca..06d4f1dfe 100644
--- a/src/ats/Makefile.am
+++ b/src/ats/Makefile.am
@@ -54,10 +54,10 @@ gnunet_service_ats_LDADD = \
54 $(GN_LIBINTL) 54 $(GN_LIBINTL)
55gnunet_service_ats_DEPENDENCIES = \ 55gnunet_service_ats_DEPENDENCIES = \
56 libgnunetats.la 56 libgnunetats.la
57 57
58gnunet_ats_SOURCES = \ 58gnunet_ats_SOURCES = \
59 gnunet-ats.c gnunet-service-ats.h 59 gnunet-ats.c gnunet-service-ats.h
60gnunet_ats_LDADD = \ 60gnunet_ats_LDADD = \
61 $(top_builddir)/src/util/libgnunetutil.la \ 61 $(top_builddir)/src/util/libgnunetutil.la \
62 $(top_builddir)/src/ats/libgnunetats.la \ 62 $(top_builddir)/src/ats/libgnunetats.la \
63 $(GN_LIBINTL) 63 $(GN_LIBINTL)
@@ -111,30 +111,35 @@ test_ats_api_scheduling_SOURCES = \
111 test_ats_api_scheduling.c 111 test_ats_api_scheduling.c
112test_ats_api_scheduling_LDADD = \ 112test_ats_api_scheduling_LDADD = \
113 $(top_builddir)/src/util/libgnunetutil.la \ 113 $(top_builddir)/src/util/libgnunetutil.la \
114 $(top_builddir)/src/testing/libgnunettesting.la \
114 $(top_builddir)/src/ats/libgnunetats.la 115 $(top_builddir)/src/ats/libgnunetats.la
115 116
116test_ats_api_reset_backoff_SOURCES = \ 117test_ats_api_reset_backoff_SOURCES = \
117 test_ats_api_reset_backoff.c 118 test_ats_api_reset_backoff.c
118test_ats_api_reset_backoff_LDADD = \ 119test_ats_api_reset_backoff_LDADD = \
119 $(top_builddir)/src/util/libgnunetutil.la \ 120 $(top_builddir)/src/util/libgnunetutil.la \
121 $(top_builddir)/src/testing/libgnunettesting.la \
120 $(top_builddir)/src/ats/libgnunetats.la 122 $(top_builddir)/src/ats/libgnunetats.la
121 123
122test_ats_api_scheduling_add_address_SOURCES = \ 124test_ats_api_scheduling_add_address_SOURCES = \
123 test_ats_api_scheduling_add_address.c 125 test_ats_api_scheduling_add_address.c
124test_ats_api_scheduling_add_address_LDADD = \ 126test_ats_api_scheduling_add_address_LDADD = \
125 $(top_builddir)/src/util/libgnunetutil.la \ 127 $(top_builddir)/src/util/libgnunetutil.la \
128 $(top_builddir)/src/testing/libgnunettesting.la \
126 $(top_builddir)/src/ats/libgnunetats.la 129 $(top_builddir)/src/ats/libgnunetats.la
127 130
128test_ats_api_scheduling_destroy_address_SOURCES = \ 131test_ats_api_scheduling_destroy_address_SOURCES = \
129 test_ats_api_scheduling_destroy_address.c 132 test_ats_api_scheduling_destroy_address.c
130test_ats_api_scheduling_destroy_address_LDADD = \ 133test_ats_api_scheduling_destroy_address_LDADD = \
131 $(top_builddir)/src/util/libgnunetutil.la \ 134 $(top_builddir)/src/util/libgnunetutil.la \
135 $(top_builddir)/src/testing/libgnunettesting.la \
132 $(top_builddir)/src/ats/libgnunetats.la 136 $(top_builddir)/src/ats/libgnunetats.la
133 137
134test_ats_api_scheduling_destroy_session_SOURCES = \ 138test_ats_api_scheduling_destroy_session_SOURCES = \
135 test_ats_api_scheduling_destroy_session.c 139 test_ats_api_scheduling_destroy_session.c
136test_ats_api_scheduling_destroy_session_LDADD = \ 140test_ats_api_scheduling_destroy_session_LDADD = \
137 $(top_builddir)/src/util/libgnunetutil.la \ 141 $(top_builddir)/src/util/libgnunetutil.la \
142 $(top_builddir)/src/testing/libgnunettesting.la \
138 $(top_builddir)/src/ats/libgnunetats.la 143 $(top_builddir)/src/ats/libgnunetats.la
139 144
140#test_ats_api_scheduling_get_type_SOURCES = \ 145#test_ats_api_scheduling_get_type_SOURCES = \
@@ -147,6 +152,7 @@ test_ats_api_scheduling_destroy_session_LDADD = \
147# test_ats_api_bandwidth_consumption.c 152# test_ats_api_bandwidth_consumption.c
148#test_ats_api_bandwidth_consumption_LDADD = \ 153#test_ats_api_bandwidth_consumption_LDADD = \
149# $(top_builddir)/src/util/libgnunetutil.la \ 154# $(top_builddir)/src/util/libgnunetutil.la \
155# $(top_builddir)/src/testing/libgnunettesting.la \
150# $(top_builddir)/src/ats/libgnunetats.la 156# $(top_builddir)/src/ats/libgnunetats.la
151 157
152#test_ats_api_update_address_SOURCES = \ 158#test_ats_api_update_address_SOURCES = \
diff --git a/src/ats/test_ats_api_bandwidth_consumption.c b/src/ats/test_ats_api_bandwidth_consumption.c
index 01321e147..5b1b2df45 100644
--- a/src/ats/test_ats_api_bandwidth_consumption.c
+++ b/src/ats/test_ats_api_bandwidth_consumption.c
@@ -26,6 +26,7 @@
26 */ 26 */
27#include "platform.h" 27#include "platform.h"
28#include "gnunet_ats_service.h" 28#include "gnunet_ats_service.h"
29#include "gnunet_testing_lib-new.h"
29#include "ats.h" 30#include "ats.h"
30 31
31#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) 32#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
@@ -40,8 +41,6 @@ static struct GNUNET_ATS_PerformanceHandle *atp;
40 41
41struct GNUNET_ATS_ReservationContext *sh; 42struct GNUNET_ATS_ReservationContext *sh;
42 43
43static struct GNUNET_OS_Process *arm_proc;
44
45static struct PeerContext *p; 44static struct PeerContext *p;
46 45
47static uint32_t bw_in; 46static uint32_t bw_in;
@@ -53,12 +52,15 @@ static int ret;
53struct Address 52struct Address
54{ 53{
55 char *plugin; 54 char *plugin;
55
56 size_t plugin_len; 56 size_t plugin_len;
57 57
58 void *addr; 58 void *addr;
59
59 size_t addr_len; 60 size_t addr_len;
60 61
61 struct GNUNET_ATS_Information *ats; 62 struct GNUNET_ATS_Information *ats;
63
62 int ats_count; 64 int ats_count;
63 65
64 void *session; 66 void *session;
@@ -73,41 +75,23 @@ struct PeerContext
73 75
74 76
75static void 77static void
76stop_arm ()
77{
78 if (0 != GNUNET_OS_process_kill (arm_proc, SIGTERM))
79 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill");
80 GNUNET_OS_process_wait (arm_proc);
81 GNUNET_OS_process_destroy (arm_proc);
82 arm_proc = NULL;
83}
84
85
86static void
87end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 78end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
88{ 79{
89 die_task = GNUNET_SCHEDULER_NO_TASK; 80 die_task = GNUNET_SCHEDULER_NO_TASK;
90
91 if (consume_task != GNUNET_SCHEDULER_NO_TASK) 81 if (consume_task != GNUNET_SCHEDULER_NO_TASK)
92 { 82 {
93 GNUNET_SCHEDULER_cancel (consume_task); 83 GNUNET_SCHEDULER_cancel (consume_task);
94 consume_task = GNUNET_SCHEDULER_NO_TASK; 84 consume_task = GNUNET_SCHEDULER_NO_TASK;
95 } 85 }
96
97 if (sh != NULL) 86 if (sh != NULL)
98 GNUNET_ATS_reserve_bandwidth_cancel (sh); 87 GNUNET_ATS_reserve_bandwidth_cancel (sh);
99
100 if (ats != NULL) 88 if (ats != NULL)
101 GNUNET_ATS_scheduling_done (ats); 89 GNUNET_ATS_scheduling_done (ats);
102 if (atp != NULL) 90 if (atp != NULL)
103 GNUNET_ATS_performance_done (atp); 91 GNUNET_ATS_performance_done (atp);
104
105 GNUNET_free (p->addr); 92 GNUNET_free (p->addr);
106 GNUNET_free (p); 93 GNUNET_free (p);
107
108 ret = GNUNET_SYSERR; 94 ret = GNUNET_SYSERR;
109
110 stop_arm ();
111} 95}
112 96
113 97
@@ -119,26 +103,20 @@ end ()
119 GNUNET_SCHEDULER_cancel (die_task); 103 GNUNET_SCHEDULER_cancel (die_task);
120 die_task = GNUNET_SCHEDULER_NO_TASK; 104 die_task = GNUNET_SCHEDULER_NO_TASK;
121 } 105 }
122
123 if (consume_task != GNUNET_SCHEDULER_NO_TASK) 106 if (consume_task != GNUNET_SCHEDULER_NO_TASK)
124 { 107 {
125 GNUNET_SCHEDULER_cancel (consume_task); 108 GNUNET_SCHEDULER_cancel (consume_task);
126 consume_task = GNUNET_SCHEDULER_NO_TASK; 109 consume_task = GNUNET_SCHEDULER_NO_TASK;
127 } 110 }
128
129 GNUNET_ATS_scheduling_done (ats); 111 GNUNET_ATS_scheduling_done (ats);
130
131 GNUNET_ATS_performance_done (atp); 112 GNUNET_ATS_performance_done (atp);
132
133 GNUNET_free (p->addr); 113 GNUNET_free (p->addr);
134 GNUNET_free (p); 114 GNUNET_free (p);
135
136 ret = 0; 115 ret = 0;
137
138 stop_arm ();
139} 116}
140 117
141void 118
119static void
142performance_cb (void *cls, const struct GNUNET_PeerIdentity *peer, 120performance_cb (void *cls, const struct GNUNET_PeerIdentity *peer,
143 const char *plugin_name, const void *plugin_addr, 121 const char *plugin_name, const void *plugin_addr,
144 size_t plugin_addr_len, 122 size_t plugin_addr_len,
@@ -149,7 +127,8 @@ performance_cb (void *cls, const struct GNUNET_PeerIdentity *peer,
149 127
150} 128}
151 129
152void 130
131static void
153reservation_cb (void *cls, const struct GNUNET_PeerIdentity *peer, 132reservation_cb (void *cls, const struct GNUNET_PeerIdentity *peer,
154 int32_t amount, struct GNUNET_TIME_Relative res_delay) 133 int32_t amount, struct GNUNET_TIME_Relative res_delay)
155{ 134{
@@ -159,6 +138,7 @@ reservation_cb (void *cls, const struct GNUNET_PeerIdentity *peer,
159 GNUNET_i2s (peer), res_delay.rel_value); 138 GNUNET_i2s (peer), res_delay.rel_value);
160} 139}
161 140
141
162static void 142static void
163consume_bandwidth (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 143consume_bandwidth (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
164{ 144{
@@ -173,6 +153,7 @@ consume_bandwidth (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
173 NULL); 153 NULL);
174} 154}
175 155
156
176static void 157static void
177address_suggest_cb (void *cls, const struct GNUNET_PeerIdentity *peer, 158address_suggest_cb (void *cls, const struct GNUNET_PeerIdentity *peer,
178 const char *plugin_name, const void *plugin_addr, 159 const char *plugin_name, const void *plugin_addr,
@@ -191,25 +172,16 @@ address_suggest_cb (void *cls, const struct GNUNET_PeerIdentity *peer,
191 consume_task = GNUNET_SCHEDULER_add_now (&consume_bandwidth, NULL); 172 consume_task = GNUNET_SCHEDULER_add_now (&consume_bandwidth, NULL);
192} 173}
193 174
194void
195start_arm (const char *cfgname)
196{
197 arm_proc =
198 GNUNET_OS_start_process (GNUNET_YES, NULL, NULL, "gnunet-service-arm",
199 "gnunet-service-arm",
200 "-c", cfgname, NULL);
201}
202 175
203static void 176static void
204check (void *cls, char *const *args, const char *cfgfile, 177run (void *cls,
205 const struct GNUNET_CONFIGURATION_Handle *cfg) 178 const struct GNUNET_CONFIGURATION_Handle *cfg,
179 struct GNUNET_TESTING_Peer *peer)
206{ 180{
207 ret = GNUNET_SYSERR;
208 struct Address *addr; 181 struct Address *addr;
209 182
183 ret = GNUNET_SYSERR;
210 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); 184 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL);
211 start_arm (cfgfile);
212
213 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL); 185 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL);
214 if (ats == NULL) 186 if (ats == NULL)
215 { 187 {
@@ -217,7 +189,6 @@ check (void *cls, char *const *args, const char *cfgfile,
217 end (); 189 end ();
218 return; 190 return;
219 } 191 }
220
221 p = GNUNET_malloc (sizeof (struct PeerContext)); 192 p = GNUNET_malloc (sizeof (struct PeerContext));
222 addr = GNUNET_malloc (sizeof (struct Address)); 193 addr = GNUNET_malloc (sizeof (struct Address));
223 194
@@ -250,25 +221,14 @@ check (void *cls, char *const *args, const char *cfgfile,
250 GNUNET_ATS_suggest_address (ats, &p->id); 221 GNUNET_ATS_suggest_address (ats, &p->id);
251} 222}
252 223
224
253int 225int
254main (int argc, char *argv[]) 226main (int argc, char *argv[])
255{ 227{
256 static char *const argv2[] = { "test_ats_api_bandwidth_consumption", 228 if (0 != GNUNET_TESTING_peer_run ("test_ats_api_bandwidth_consumption",
257 "-c", 229 "test_ats_api.conf",
258 "test_ats_api.conf", 230 &run, NULL))
259 "-L", "WARNING", 231 return 1;
260 NULL
261 };
262
263 static struct GNUNET_GETOPT_CommandLineOption options[] = {
264 GNUNET_GETOPT_OPTION_END
265 };
266
267 GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
268 "test_ats_api_bandwidth_consumption", "nohelp", options,
269 &check, NULL);
270
271
272 return ret; 232 return ret;
273} 233}
274 234
diff --git a/src/ats/test_ats_api_reset_backoff.c b/src/ats/test_ats_api_reset_backoff.c
index 859cfc215..ecdf0cb53 100644
--- a/src/ats/test_ats_api_reset_backoff.c
+++ b/src/ats/test_ats_api_reset_backoff.c
@@ -25,6 +25,7 @@
25 */ 25 */
26#include "platform.h" 26#include "platform.h"
27#include "gnunet_ats_service.h" 27#include "gnunet_ats_service.h"
28#include "gnunet_testing_lib-new.h"
28#include "ats.h" 29#include "ats.h"
29 30
30#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) 31#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
@@ -36,10 +37,9 @@ static GNUNET_SCHEDULER_TaskIdentifier suggest_timeout_task;
36 37
37static struct GNUNET_ATS_SchedulingHandle *ats; 38static struct GNUNET_ATS_SchedulingHandle *ats;
38 39
39struct GNUNET_OS_Process *arm_proc;
40
41static int ret; 40static int ret;
42 41
42
43struct Address 43struct Address
44{ 44{
45 char *plugin; 45 char *plugin;
@@ -62,41 +62,29 @@ struct PeerContext
62}; 62};
63 63
64struct GNUNET_HELLO_Address hello_addr; 64struct GNUNET_HELLO_Address hello_addr;
65
65struct Address address; 66struct Address address;
67
66struct PeerContext peer; 68struct PeerContext peer;
67struct GNUNET_ATS_Information atsi[2];
68 69
69static void 70struct GNUNET_ATS_Information atsi[2];
70stop_arm ()
71{
72 if (0 != GNUNET_OS_process_kill (arm_proc, SIGTERM))
73 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill");
74 GNUNET_OS_process_wait (arm_proc);
75 GNUNET_OS_process_destroy (arm_proc);
76 arm_proc = NULL;
77}
78 71
79 72
80static void 73static void
81end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 74end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
82{ 75{
83 die_task = GNUNET_SCHEDULER_NO_TASK; 76 die_task = GNUNET_SCHEDULER_NO_TASK;
84
85 if (suggest_timeout_task != GNUNET_SCHEDULER_NO_TASK) 77 if (suggest_timeout_task != GNUNET_SCHEDULER_NO_TASK)
86 { 78 {
87 GNUNET_SCHEDULER_cancel (suggest_timeout_task); 79 GNUNET_SCHEDULER_cancel (suggest_timeout_task);
88 suggest_timeout_task = GNUNET_SCHEDULER_NO_TASK; 80 suggest_timeout_task = GNUNET_SCHEDULER_NO_TASK;
89 } 81 }
90
91 if (ats != NULL) 82 if (ats != NULL)
92 { 83 {
93 GNUNET_ATS_scheduling_done (ats); 84 GNUNET_ATS_scheduling_done (ats);
94 ats = NULL; 85 ats = NULL;
95 } 86 }
96
97 ret = GNUNET_SYSERR; 87 ret = GNUNET_SYSERR;
98
99 stop_arm ();
100} 88}
101 89
102 90
@@ -115,12 +103,8 @@ end ()
115 GNUNET_SCHEDULER_cancel (suggest_timeout_task); 103 GNUNET_SCHEDULER_cancel (suggest_timeout_task);
116 suggest_timeout_task = GNUNET_SCHEDULER_NO_TASK; 104 suggest_timeout_task = GNUNET_SCHEDULER_NO_TASK;
117 } 105 }
118
119 GNUNET_ATS_scheduling_done (ats); 106 GNUNET_ATS_scheduling_done (ats);
120
121 ret = 0; 107 ret = 0;
122
123 stop_arm ();
124} 108}
125 109
126 110
@@ -128,18 +112,16 @@ static void
128suggest_timeout (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc) 112suggest_timeout (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
129{ 113{
130 suggest_timeout_task = GNUNET_SCHEDULER_NO_TASK; 114 suggest_timeout_task = GNUNET_SCHEDULER_NO_TASK;
131
132 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Requesting address for peer timed out\n"); 115 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Requesting address for peer timed out\n");
133
134 if (die_task != GNUNET_SCHEDULER_NO_TASK) 116 if (die_task != GNUNET_SCHEDULER_NO_TASK)
135 { 117 {
136 GNUNET_SCHEDULER_cancel (die_task); 118 GNUNET_SCHEDULER_cancel (die_task);
137 die_task = GNUNET_SCHEDULER_NO_TASK; 119 die_task = GNUNET_SCHEDULER_NO_TASK;
138 } 120 }
139
140 die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL); 121 die_task = GNUNET_SCHEDULER_add_now (&end_badly, NULL);
141} 122}
142 123
124
143static void 125static void
144address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *a, 126address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *a,
145 struct Session *session, 127 struct Session *session,
@@ -149,6 +131,7 @@ address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *a,
149 uint32_t ats_count) 131 uint32_t ats_count)
150{ 132{
151 static int suggestions; 133 static int suggestions;
134
152 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "ATS suggests address `%s'\n", 135 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "ATS suggests address `%s'\n",
153 GNUNET_i2s (&a->peer)); 136 GNUNET_i2s (&a->peer));
154 137
@@ -230,26 +213,15 @@ address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *a,
230 suggest_timeout_task = GNUNET_SCHEDULER_add_delayed(ATS_TIMEOUT, &suggest_timeout, NULL); 213 suggest_timeout_task = GNUNET_SCHEDULER_add_delayed(ATS_TIMEOUT, &suggest_timeout, NULL);
231} 214}
232 215
233void
234start_arm (const char *cfgname)
235{
236 arm_proc =
237 GNUNET_OS_start_process (GNUNET_YES, NULL, NULL, "gnunet-service-arm",
238 "gnunet-service-arm",
239 "-c", cfgname, NULL);
240}
241 216
242static void 217static void
243check (void *cls, char *const *args, const char *cfgfile, 218run (void *cls,
244 const struct GNUNET_CONFIGURATION_Handle *cfg) 219 const struct GNUNET_CONFIGURATION_Handle *cfg,
220 struct GNUNET_TESTING_Peer *peerx)
245{ 221{
246 ret = GNUNET_SYSERR; 222 ret = GNUNET_SYSERR;
247
248 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); 223 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL);
249 start_arm (cfgfile);
250
251 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL); 224 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL);
252
253 if (ats == NULL) 225 if (ats == NULL)
254 { 226 {
255 ret = GNUNET_SYSERR; 227 ret = GNUNET_SYSERR;
@@ -280,30 +252,18 @@ check (void *cls, char *const *args, const char *cfgfile,
280 GNUNET_i2s (&peer.id)); 252 GNUNET_i2s (&peer.id));
281 /* Increase block timout far beyond ATS_TIMEOUT */ 253 /* Increase block timout far beyond ATS_TIMEOUT */
282 GNUNET_ATS_suggest_address (ats, &peer.id); 254 GNUNET_ATS_suggest_address (ats, &peer.id);
283
284 GNUNET_ATS_reset_backoff(ats, &peer.id); 255 GNUNET_ATS_reset_backoff(ats, &peer.id);
285 GNUNET_ATS_suggest_address (ats, &peer.id); 256 GNUNET_ATS_suggest_address (ats, &peer.id);
286} 257}
287 258
259
288int 260int
289main (int argc, char *argv[]) 261main (int argc, char *argv[])
290{ 262{
291 static char *const argv2[] = { "test_ats_api_scheduling", 263 if (0 != GNUNET_TESTING_peer_run ("test_ats_api_reset_backoff",
292 "-c", 264 "test_ats_api.conf",
293 "test_ats_api.conf", 265 &run, NULL))
294 "-L", "WARNING", 266 return 1;
295 NULL
296 };
297
298 static struct GNUNET_GETOPT_CommandLineOption options[] = {
299 GNUNET_GETOPT_OPTION_END
300 };
301
302 GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
303 "test_ats_api_scheduling", "nohelp", options, &check,
304 NULL);
305
306
307 return ret; 267 return ret;
308} 268}
309/* end of file test_ats_api_reset_backoff.c */ 269/* end of file test_ats_api_reset_backoff.c */
diff --git a/src/ats/test_ats_api_scheduling.c b/src/ats/test_ats_api_scheduling.c
index 39d53ddd4..750bae6c2 100644
--- a/src/ats/test_ats_api_scheduling.c
+++ b/src/ats/test_ats_api_scheduling.c
@@ -32,6 +32,7 @@
32 */ 32 */
33#include "platform.h" 33#include "platform.h"
34#include "gnunet_ats_service.h" 34#include "gnunet_ats_service.h"
35#include "gnunet_testing_lib-new.h"
35#include "ats.h" 36#include "ats.h"
36 37
37#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) 38#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
@@ -40,10 +41,6 @@ static GNUNET_SCHEDULER_TaskIdentifier die_task;
40 41
41static struct GNUNET_ATS_SchedulingHandle *ats; 42static struct GNUNET_ATS_SchedulingHandle *ats;
42 43
43struct GNUNET_OS_Process *arm_proc;
44
45
46
47static int ret; 44static int ret;
48 45
49struct Address 46struct Address
@@ -67,19 +64,11 @@ struct PeerContext
67 struct Address *addr; 64 struct Address *addr;
68}; 65};
69 66
70struct Address test_addr[2]; 67static struct Address test_addr[2];
71struct PeerContext p[2];
72struct GNUNET_ATS_Information atsi[2];
73 68
74static void 69static struct PeerContext p[2];
75stop_arm () 70
76{ 71static struct GNUNET_ATS_Information atsi[2];
77 if (0 != GNUNET_OS_process_kill (arm_proc, SIGTERM))
78 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill");
79 GNUNET_OS_process_wait (arm_proc);
80 GNUNET_OS_process_destroy (arm_proc);
81 arm_proc = NULL;
82}
83 72
84 73
85static void 74static void
@@ -88,10 +77,7 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
88 die_task = GNUNET_SCHEDULER_NO_TASK; 77 die_task = GNUNET_SCHEDULER_NO_TASK;
89 if (ats != NULL) 78 if (ats != NULL)
90 GNUNET_ATS_scheduling_done (ats); 79 GNUNET_ATS_scheduling_done (ats);
91
92 ret = GNUNET_SYSERR; 80 ret = GNUNET_SYSERR;
93
94 stop_arm ();
95} 81}
96 82
97 83
@@ -106,10 +92,7 @@ end ()
106 } 92 }
107 93
108 GNUNET_ATS_scheduling_done (ats); 94 GNUNET_ATS_scheduling_done (ats);
109
110 ret = 0; 95 ret = 0;
111
112 stop_arm ();
113} 96}
114 97
115 98
@@ -139,35 +122,24 @@ address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *address,
139 GNUNET_SCHEDULER_add_now (&end, NULL); 122 GNUNET_SCHEDULER_add_now (&end, NULL);
140} 123}
141 124
142void
143start_arm (const char *cfgname)
144{
145 arm_proc =
146 GNUNET_OS_start_process (GNUNET_YES, NULL, NULL, "gnunet-service-arm",
147 "gnunet-service-arm",
148 "-c", cfgname, NULL);
149}
150 125
151static void 126static void
152check (void *cls, char *const *args, const char *cfgfile, 127run (void *cls,
153 const struct GNUNET_CONFIGURATION_Handle *cfg) 128 const struct GNUNET_CONFIGURATION_Handle *cfg,
129 struct GNUNET_TESTING_Peer *peer)
154{ 130{
155 struct GNUNET_HELLO_Address address0; 131 struct GNUNET_HELLO_Address address0;
156 132
157 ret = GNUNET_SYSERR; 133 ret = GNUNET_SYSERR;
158 134
159 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); 135 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL);
160 start_arm (cfgfile);
161
162 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL); 136 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL);
163
164 if (ats == NULL) 137 if (ats == NULL)
165 { 138 {
166 ret = GNUNET_SYSERR; 139 ret = GNUNET_SYSERR;
167 end (); 140 end ();
168 return; 141 return;
169 } 142 }
170
171 /* set up peer */ 143 /* set up peer */
172 GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK, 144 GNUNET_CRYPTO_hash_create_random (GNUNET_CRYPTO_QUALITY_WEAK,
173 &p[0].id.hashPubKey); 145 &p[0].id.hashPubKey);
@@ -215,25 +187,14 @@ check (void *cls, char *const *args, const char *cfgfile,
215 GNUNET_ATS_suggest_address (ats, &p[0].id); 187 GNUNET_ATS_suggest_address (ats, &p[0].id);
216} 188}
217 189
190
218int 191int
219main (int argc, char *argv[]) 192main (int argc, char *argv[])
220{ 193{
221 static char *const argv2[] = { "test_ats_api_scheduling", 194 if (0 != GNUNET_TESTING_peer_run ("test_ats_api_scheduling",
222 "-c", 195 "test_ats_api.conf",
223 "test_ats_api.conf", 196 &run, NULL))
224 "-L", "WARNING", 197 return 1;
225 NULL
226 };
227
228 static struct GNUNET_GETOPT_CommandLineOption options[] = {
229 GNUNET_GETOPT_OPTION_END
230 };
231
232 GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
233 "test_ats_api_scheduling", "nohelp", options, &check,
234 NULL);
235
236
237 return ret; 198 return ret;
238} 199}
239 200
diff --git a/src/ats/test_ats_api_scheduling_add_address.c b/src/ats/test_ats_api_scheduling_add_address.c
index 587515df3..29dd33c71 100644
--- a/src/ats/test_ats_api_scheduling_add_address.c
+++ b/src/ats/test_ats_api_scheduling_add_address.c
@@ -25,6 +25,7 @@
25 */ 25 */
26#include "platform.h" 26#include "platform.h"
27#include "gnunet_ats_service.h" 27#include "gnunet_ats_service.h"
28#include "gnunet_testing_lib-new.h"
28#include "ats.h" 29#include "ats.h"
29 30
30#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) 31#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
@@ -33,10 +34,6 @@ static GNUNET_SCHEDULER_TaskIdentifier die_task;
33 34
34static struct GNUNET_ATS_SchedulingHandle *ats; 35static struct GNUNET_ATS_SchedulingHandle *ats;
35 36
36struct GNUNET_OS_Process *arm_proc;
37
38
39
40static int ret; 37static int ret;
41 38
42struct Address 39struct Address
@@ -60,19 +57,12 @@ struct PeerContext
60 struct Address *addr; 57 struct Address *addr;
61}; 58};
62 59
63struct Address test_addr;
64struct PeerContext p;
65struct GNUNET_ATS_Information atsi;
66 60
67static void 61static struct Address test_addr;
68stop_arm () 62
69{ 63static struct PeerContext p;
70 if (0 != GNUNET_OS_process_kill (arm_proc, SIGTERM)) 64
71 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill"); 65static struct GNUNET_ATS_Information atsi;
72 GNUNET_OS_process_wait (arm_proc);
73 GNUNET_OS_process_destroy (arm_proc);
74 arm_proc = NULL;
75}
76 66
77 67
78static void 68static void
@@ -81,10 +71,7 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
81 die_task = GNUNET_SCHEDULER_NO_TASK; 71 die_task = GNUNET_SCHEDULER_NO_TASK;
82 if (ats != NULL) 72 if (ats != NULL)
83 GNUNET_ATS_scheduling_done (ats); 73 GNUNET_ATS_scheduling_done (ats);
84
85 ret = GNUNET_SYSERR; 74 ret = GNUNET_SYSERR;
86
87 stop_arm ();
88} 75}
89 76
90 77
@@ -97,12 +84,8 @@ end ()
97 GNUNET_SCHEDULER_cancel (die_task); 84 GNUNET_SCHEDULER_cancel (die_task);
98 die_task = GNUNET_SCHEDULER_NO_TASK; 85 die_task = GNUNET_SCHEDULER_NO_TASK;
99 } 86 }
100
101 GNUNET_ATS_scheduling_done (ats); 87 GNUNET_ATS_scheduling_done (ats);
102
103 ret = 0; 88 ret = 0;
104
105 stop_arm ();
106} 89}
107 90
108 91
@@ -132,26 +115,16 @@ address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *address,
132 GNUNET_SCHEDULER_add_now (&end, NULL); 115 GNUNET_SCHEDULER_add_now (&end, NULL);
133} 116}
134 117
135void
136start_arm (const char *cfgname)
137{
138 arm_proc =
139 GNUNET_OS_start_process (GNUNET_YES, NULL, NULL, "gnunet-service-arm",
140 "gnunet-service-arm",
141 "-c", cfgname, NULL);
142}
143 118
144static void 119static void
145check (void *cls, char *const *args, const char *cfgfile, 120run (void *cls,
146 const struct GNUNET_CONFIGURATION_Handle *cfg) 121 const struct GNUNET_CONFIGURATION_Handle *cfg,
122 struct GNUNET_TESTING_Peer *peer)
147{ 123{
148 struct GNUNET_HELLO_Address address0; 124 struct GNUNET_HELLO_Address address0;
149 125
150 ret = GNUNET_SYSERR; 126 ret = GNUNET_SYSERR;
151
152 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); 127 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL);
153 start_arm (cfgfile);
154
155 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL); 128 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL);
156 129
157 if (ats == NULL) 130 if (ats == NULL)
@@ -194,25 +167,14 @@ check (void *cls, char *const *args, const char *cfgfile,
194 GNUNET_ATS_suggest_address (ats, &p.id); 167 GNUNET_ATS_suggest_address (ats, &p.id);
195} 168}
196 169
170
197int 171int
198main (int argc, char *argv[]) 172main (int argc, char *argv[])
199{ 173{
200 static char *const argv2[] = { "test_ats_api_scheduling_add_address", 174 if (0 != GNUNET_TESTING_peer_run ("test_ats_api_scheduling_add_address",
201 "-c", 175 "test_ats_api.conf",
202 "test_ats_api.conf", 176 &run, NULL))
203 "-L", "WARNING", 177 return 1;
204 NULL
205 };
206
207 static struct GNUNET_GETOPT_CommandLineOption options[] = {
208 GNUNET_GETOPT_OPTION_END
209 };
210
211 GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
212 "test_ats_api_scheduling_add_address", "nohelp", options, &check,
213 NULL);
214
215
216 return ret; 178 return ret;
217} 179}
218 180
diff --git a/src/ats/test_ats_api_scheduling_destroy_address.c b/src/ats/test_ats_api_scheduling_destroy_address.c
index 9cf6217f8..ff29e9a2d 100644
--- a/src/ats/test_ats_api_scheduling_destroy_address.c
+++ b/src/ats/test_ats_api_scheduling_destroy_address.c
@@ -26,6 +26,7 @@
26 */ 26 */
27#include "platform.h" 27#include "platform.h"
28#include "gnunet_ats_service.h" 28#include "gnunet_ats_service.h"
29#include "gnunet_testing_lib-new.h"
29#include "ats.h" 30#include "ats.h"
30 31
31#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) 32#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
@@ -34,13 +35,11 @@ static GNUNET_SCHEDULER_TaskIdentifier die_task;
34 35
35static struct GNUNET_ATS_SchedulingHandle *ats; 36static struct GNUNET_ATS_SchedulingHandle *ats;
36 37
37struct GNUNET_OS_Process *arm_proc;
38
39
40
41static int ret; 38static int ret;
39
42static int stage; 40static int stage;
43 41
42
44struct Address 43struct Address
45{ 44{
46 char *plugin; 45 char *plugin;
@@ -62,20 +61,11 @@ struct PeerContext
62 struct Address *addr; 61 struct Address *addr;
63}; 62};
64 63
65struct Address test_addr; 64static struct Address test_addr;
66struct PeerContext p;
67struct GNUNET_ATS_Information atsi;
68struct GNUNET_HELLO_Address hello_address;
69 65
70static void 66static struct PeerContext p;
71stop_arm () 67
72{ 68static struct GNUNET_HELLO_Address hello_address;
73 if (0 != GNUNET_OS_process_kill (arm_proc, SIGTERM))
74 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill");
75 GNUNET_OS_process_wait (arm_proc);
76 GNUNET_OS_process_destroy (arm_proc);
77 arm_proc = NULL;
78}
79 69
80 70
81static void 71static void
@@ -84,10 +74,7 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
84 die_task = GNUNET_SCHEDULER_NO_TASK; 74 die_task = GNUNET_SCHEDULER_NO_TASK;
85 if (ats != NULL) 75 if (ats != NULL)
86 GNUNET_ATS_scheduling_done (ats); 76 GNUNET_ATS_scheduling_done (ats);
87
88 ret = GNUNET_SYSERR; 77 ret = GNUNET_SYSERR;
89
90 stop_arm ();
91} 78}
92 79
93 80
@@ -100,9 +87,7 @@ end ()
100 GNUNET_SCHEDULER_cancel (die_task); 87 GNUNET_SCHEDULER_cancel (die_task);
101 die_task = GNUNET_SCHEDULER_NO_TASK; 88 die_task = GNUNET_SCHEDULER_NO_TASK;
102 } 89 }
103
104 GNUNET_ATS_scheduling_done (ats); 90 GNUNET_ATS_scheduling_done (ats);
105
106 if (2 == stage) 91 if (2 == stage)
107 ret = 0; 92 ret = 0;
108 else 93 else
@@ -110,8 +95,6 @@ end ()
110 GNUNET_break (0); 95 GNUNET_break (0);
111 ret = 1; 96 ret = 1;
112 } 97 }
113
114 stop_arm ();
115} 98}
116 99
117 100
@@ -155,26 +138,16 @@ address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *address,
155 stage++; 138 stage++;
156} 139}
157 140
158void
159start_arm (const char *cfgname)
160{
161 arm_proc =
162 GNUNET_OS_start_process (GNUNET_YES, NULL, NULL, "gnunet-service-arm",
163 "gnunet-service-arm",
164 "-c", cfgname, NULL);
165}
166 141
167static void 142static void
168check (void *cls, char *const *args, const char *cfgfile, 143run (void *cls,
169 const struct GNUNET_CONFIGURATION_Handle *cfg) 144 const struct GNUNET_CONFIGURATION_Handle *cfg,
145 struct GNUNET_TESTING_Peer *peer)
170{ 146{
171 ret = GNUNET_SYSERR; 147 ret = GNUNET_SYSERR;
172 148
173 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); 149 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL);
174 start_arm (cfgfile);
175
176 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL); 150 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL);
177
178 if (ats == NULL) 151 if (ats == NULL)
179 { 152 {
180 ret = GNUNET_SYSERR; 153 ret = GNUNET_SYSERR;
@@ -199,29 +172,17 @@ check (void *cls, char *const *args, const char *cfgfile,
199 hello_address.address = test_addr.addr; 172 hello_address.address = test_addr.addr;
200 hello_address.address_length = test_addr.addr_len; 173 hello_address.address_length = test_addr.addr_len;
201 GNUNET_ATS_address_add (ats, &hello_address, test_addr.session, NULL, 0); 174 GNUNET_ATS_address_add (ats, &hello_address, test_addr.session, NULL, 0);
202
203 GNUNET_ATS_suggest_address (ats, &p.id); 175 GNUNET_ATS_suggest_address (ats, &p.id);
204} 176}
205 177
178
206int 179int
207main (int argc, char *argv[]) 180main (int argc, char *argv[])
208{ 181{
209 static char *const argv2[] = { "test_ats_api_scheduling_destroy_address", 182 if (0 != GNUNET_TESTING_peer_run ("test_ats_api_scheduling_destroy_address",
210 "-c", 183 "test_ats_api.conf",
211 "test_ats_api.conf", 184 &run, NULL))
212 "-L", "WARNING", 185 return 1;
213 NULL
214 };
215
216 static struct GNUNET_GETOPT_CommandLineOption options[] = {
217 GNUNET_GETOPT_OPTION_END
218 };
219
220 GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
221 "test_ats_api_scheduling_destroy_address", "nohelp", options, &check,
222 NULL);
223
224
225 return ret; 186 return ret;
226} 187}
227 188
diff --git a/src/ats/test_ats_api_scheduling_destroy_session.c b/src/ats/test_ats_api_scheduling_destroy_session.c
index 7d223a71e..722102b32 100644
--- a/src/ats/test_ats_api_scheduling_destroy_session.c
+++ b/src/ats/test_ats_api_scheduling_destroy_session.c
@@ -27,6 +27,7 @@
27 */ 27 */
28#include "platform.h" 28#include "platform.h"
29#include "gnunet_ats_service.h" 29#include "gnunet_ats_service.h"
30#include "gnunet_testing_lib-new.h"
30#include "ats.h" 31#include "ats.h"
31 32
32#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10) 33#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 10)
@@ -35,11 +36,8 @@ static GNUNET_SCHEDULER_TaskIdentifier die_task;
35 36
36static struct GNUNET_ATS_SchedulingHandle *ats; 37static struct GNUNET_ATS_SchedulingHandle *ats;
37 38
38struct GNUNET_OS_Process *arm_proc;
39
40
41
42static int ret; 39static int ret;
40
43static int stage; 41static int stage;
44 42
45struct Address 43struct Address
@@ -63,20 +61,12 @@ struct PeerContext
63 struct Address *addr; 61 struct Address *addr;
64}; 62};
65 63
66struct Address test_addr;
67struct PeerContext p;
68struct GNUNET_ATS_Information atsi;
69struct GNUNET_HELLO_Address hello_address;
70 64
71static void 65static struct Address test_addr;
72stop_arm () 66
73{ 67static struct PeerContext p;
74 if (0 != GNUNET_OS_process_kill (arm_proc, SIGTERM)) 68
75 GNUNET_log_strerror (GNUNET_ERROR_TYPE_WARNING, "kill"); 69static struct GNUNET_HELLO_Address hello_address;
76 GNUNET_OS_process_wait (arm_proc);
77 GNUNET_OS_process_destroy (arm_proc);
78 arm_proc = NULL;
79}
80 70
81 71
82static void 72static void
@@ -85,10 +75,7 @@ end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
85 die_task = GNUNET_SCHEDULER_NO_TASK; 75 die_task = GNUNET_SCHEDULER_NO_TASK;
86 if (ats != NULL) 76 if (ats != NULL)
87 GNUNET_ATS_scheduling_done (ats); 77 GNUNET_ATS_scheduling_done (ats);
88
89 ret = GNUNET_SYSERR; 78 ret = GNUNET_SYSERR;
90
91 stop_arm ();
92} 79}
93 80
94 81
@@ -101,9 +88,7 @@ end ()
101 GNUNET_SCHEDULER_cancel (die_task); 88 GNUNET_SCHEDULER_cancel (die_task);
102 die_task = GNUNET_SCHEDULER_NO_TASK; 89 die_task = GNUNET_SCHEDULER_NO_TASK;
103 } 90 }
104
105 GNUNET_ATS_scheduling_done (ats); 91 GNUNET_ATS_scheduling_done (ats);
106
107 if (2 == stage) 92 if (2 == stage)
108 ret = 0; 93 ret = 0;
109 else 94 else
@@ -111,8 +96,6 @@ end ()
111 GNUNET_break (0); 96 GNUNET_break (0);
112 ret = 1; 97 ret = 1;
113 } 98 }
114
115 stop_arm ();
116} 99}
117 100
118 101
@@ -167,26 +150,16 @@ address_suggest_cb (void *cls, const struct GNUNET_HELLO_Address *address,
167 stage++; 150 stage++;
168} 151}
169 152
170void
171start_arm (const char *cfgname)
172{
173 arm_proc =
174 GNUNET_OS_start_process (GNUNET_YES, NULL, NULL, "gnunet-service-arm",
175 "gnunet-service-arm",
176 "-c", cfgname, NULL);
177}
178 153
179static void 154static void
180check (void *cls, char *const *args, const char *cfgfile, 155run (void *cls,
181 const struct GNUNET_CONFIGURATION_Handle *cfg) 156 const struct GNUNET_CONFIGURATION_Handle *cfg,
157 struct GNUNET_TESTING_Peer *peer)
182{ 158{
183 ret = GNUNET_SYSERR; 159 ret = GNUNET_SYSERR;
184 160
185 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL); 161 die_task = GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_badly, NULL);
186 start_arm (cfgfile);
187
188 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL); 162 ats = GNUNET_ATS_scheduling_init (cfg, &address_suggest_cb, NULL);
189
190 if (ats == NULL) 163 if (ats == NULL)
191 { 164 {
192 ret = GNUNET_SYSERR; 165 ret = GNUNET_SYSERR;
@@ -211,29 +184,17 @@ check (void *cls, char *const *args, const char *cfgfile,
211 hello_address.address = test_addr.addr; 184 hello_address.address = test_addr.addr;
212 hello_address.address_length = test_addr.addr_len; 185 hello_address.address_length = test_addr.addr_len;
213 GNUNET_ATS_address_add (ats, &hello_address, test_addr.session, NULL, 0); 186 GNUNET_ATS_address_add (ats, &hello_address, test_addr.session, NULL, 0);
214
215 GNUNET_ATS_suggest_address (ats, &p.id); 187 GNUNET_ATS_suggest_address (ats, &p.id);
216} 188}
217 189
190
218int 191int
219main (int argc, char *argv[]) 192main (int argc, char *argv[])
220{ 193{
221 static char *const argv2[] = { "test_ats_api_scheduling_destroy_session", 194 if (0 != GNUNET_TESTING_peer_run ("test_ats_api_scheduling_destroy_session",
222 "-c", 195 "test_ats_api.conf",
223 "test_ats_api.conf", 196 &run, NULL))
224 "-L", "WARNING", 197 return 1;
225 NULL
226 };
227
228 static struct GNUNET_GETOPT_CommandLineOption options[] = {
229 GNUNET_GETOPT_OPTION_END
230 };
231
232 GNUNET_PROGRAM_run ((sizeof (argv2) / sizeof (char *)) - 1, argv2,
233 "test_ats_api_scheduling_destroy_session", "nohelp", options, &check,
234 NULL);
235
236
237 return ret; 198 return ret;
238} 199}
239 200