diff options
author | Florian Dold <florian.dold@gmail.com> | 2016-06-20 15:18:00 +0000 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2016-06-20 15:18:00 +0000 |
commit | 726d3b7c0f8a0f5c14f7ffa787502fc4c56ab2c1 (patch) | |
tree | b59bb8719e6c2c41467d740f06c25a903d407292 /src/set | |
parent | f18f7122859485e1d949539ee7aa802a39963b43 (diff) | |
download | gnunet-726d3b7c0f8a0f5c14f7ffa787502fc4c56ab2c1.tar.gz gnunet-726d3b7c0f8a0f5c14f7ffa787502fc4c56ab2c1.zip |
adapt set test case to new scheduler semantics
Diffstat (limited to 'src/set')
-rw-r--r-- | src/set/test_set_union_result_symmetric.c | 36 |
1 files changed, 33 insertions, 3 deletions
diff --git a/src/set/test_set_union_result_symmetric.c b/src/set/test_set_union_result_symmetric.c index 13f5c3e18..ec5bd936c 100644 --- a/src/set/test_set_union_result_symmetric.c +++ b/src/set/test_set_union_result_symmetric.c | |||
@@ -61,6 +61,11 @@ static unsigned int count_set1; | |||
61 | */ | 61 | */ |
62 | static unsigned int count_set2; | 62 | static unsigned int count_set2; |
63 | 63 | ||
64 | /** | ||
65 | * Task that is run when the test times out. | ||
66 | */ | ||
67 | static struct GNUNET_SCHEDULER_Task *timeout_task; | ||
68 | |||
64 | 69 | ||
65 | static void | 70 | static void |
66 | result_cb_set1 (void *cls, | 71 | result_cb_set1 (void *cls, |
@@ -78,6 +83,11 @@ result_cb_set1 (void *cls, | |||
78 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 83 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
79 | "set 1: failure\n"); | 84 | "set 1: failure\n"); |
80 | ret = 1; | 85 | ret = 1; |
86 | if (NULL != timeout_task) | ||
87 | { | ||
88 | GNUNET_SCHEDULER_cancel (timeout_task); | ||
89 | timeout_task = NULL; | ||
90 | } | ||
81 | GNUNET_SCHEDULER_shutdown (); | 91 | GNUNET_SCHEDULER_shutdown (); |
82 | break; | 92 | break; |
83 | case GNUNET_SET_STATUS_DONE: | 93 | case GNUNET_SET_STATUS_DONE: |
@@ -86,7 +96,14 @@ result_cb_set1 (void *cls, | |||
86 | GNUNET_SET_destroy (set1); | 96 | GNUNET_SET_destroy (set1); |
87 | set1 = NULL; | 97 | set1 = NULL; |
88 | if (NULL == set2) | 98 | if (NULL == set2) |
99 | { | ||
100 | if (NULL != timeout_task) | ||
101 | { | ||
102 | GNUNET_SCHEDULER_cancel (timeout_task); | ||
103 | timeout_task = NULL; | ||
104 | } | ||
89 | GNUNET_SCHEDULER_shutdown (); | 105 | GNUNET_SCHEDULER_shutdown (); |
106 | } | ||
90 | break; | 107 | break; |
91 | case GNUNET_SET_STATUS_ADD_REMOTE: | 108 | case GNUNET_SET_STATUS_ADD_REMOTE: |
92 | break; | 109 | break; |
@@ -112,6 +129,11 @@ result_cb_set2 (void *cls, | |||
112 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, | 129 | GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, |
113 | "set 2: failure\n"); | 130 | "set 2: failure\n"); |
114 | ret = 1; | 131 | ret = 1; |
132 | if (NULL != timeout_task) | ||
133 | { | ||
134 | GNUNET_SCHEDULER_cancel (timeout_task); | ||
135 | timeout_task = NULL; | ||
136 | } | ||
115 | GNUNET_SCHEDULER_shutdown (); | 137 | GNUNET_SCHEDULER_shutdown (); |
116 | break; | 138 | break; |
117 | case GNUNET_SET_STATUS_DONE: | 139 | case GNUNET_SET_STATUS_DONE: |
@@ -120,7 +142,14 @@ result_cb_set2 (void *cls, | |||
120 | GNUNET_SET_destroy (set2); | 142 | GNUNET_SET_destroy (set2); |
121 | set2 = NULL; | 143 | set2 = NULL; |
122 | if (NULL == set1) | 144 | if (NULL == set1) |
145 | { | ||
146 | if (NULL != timeout_task) | ||
147 | { | ||
148 | GNUNET_SCHEDULER_cancel (timeout_task); | ||
149 | timeout_task = NULL; | ||
150 | } | ||
123 | GNUNET_SCHEDULER_shutdown (); | 151 | GNUNET_SCHEDULER_shutdown (); |
152 | } | ||
124 | break; | 153 | break; |
125 | case GNUNET_SET_STATUS_ADD_REMOTE: | 154 | case GNUNET_SET_STATUS_ADD_REMOTE: |
126 | break; | 155 | break; |
@@ -297,6 +326,7 @@ test_iter () | |||
297 | static void | 326 | static void |
298 | timeout_fail (void *cls) | 327 | timeout_fail (void *cls) |
299 | { | 328 | { |
329 | timeout_task = NULL; | ||
300 | GNUNET_SCHEDULER_shutdown (); | 330 | GNUNET_SCHEDULER_shutdown (); |
301 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, | 331 | GNUNET_log (GNUNET_ERROR_TYPE_ERROR, |
302 | "test timed out\n"); | 332 | "test timed out\n"); |
@@ -317,9 +347,9 @@ run (void *cls, | |||
317 | const struct GNUNET_CONFIGURATION_Handle *cfg, | 347 | const struct GNUNET_CONFIGURATION_Handle *cfg, |
318 | struct GNUNET_TESTING_Peer *peer) | 348 | struct GNUNET_TESTING_Peer *peer) |
319 | { | 349 | { |
320 | GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 5), | 350 | timeout_task = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 5), |
321 | &timeout_fail, | 351 | &timeout_fail, |
322 | NULL); | 352 | NULL); |
323 | 353 | ||
324 | config = cfg; | 354 | config = cfg; |
325 | GNUNET_TESTING_peer_get_identity (peer, | 355 | GNUNET_TESTING_peer_get_identity (peer, |