diff options
author | Sree Harsha Totakura <totakura@in.tum.de> | 2012-07-24 12:39:39 +0000 |
---|---|---|
committer | Sree Harsha Totakura <totakura@in.tum.de> | 2012-07-24 12:39:39 +0000 |
commit | e48b37b7041f4bad25a5d23a32be278f1801e1b3 (patch) | |
tree | ee0cb1245712fda0cf869b87ab36f421df4c8ba3 /src/testbed/test_testbed_api.c | |
parent | efa8d0fd1dc4df1fd291d60dbe71c0b861af1e3e (diff) | |
download | gnunet-e48b37b7041f4bad25a5d23a32be278f1801e1b3.tar.gz gnunet-e48b37b7041f4bad25a5d23a32be278f1801e1b3.zip |
testcases for peer get information
Diffstat (limited to 'src/testbed/test_testbed_api.c')
-rw-r--r-- | src/testbed/test_testbed_api.c | 66 |
1 files changed, 58 insertions, 8 deletions
diff --git a/src/testbed/test_testbed_api.c b/src/testbed/test_testbed_api.c index 3bb45f730..ba026cb65 100644 --- a/src/testbed/test_testbed_api.c +++ b/src/testbed/test_testbed_api.c | |||
@@ -94,6 +94,32 @@ static int result; | |||
94 | 94 | ||
95 | 95 | ||
96 | /** | 96 | /** |
97 | * Enumeration of sub testcases | ||
98 | */ | ||
99 | enum Test | ||
100 | { | ||
101 | /** | ||
102 | * Test cases which are not covered by the below ones | ||
103 | */ | ||
104 | OTHER, | ||
105 | |||
106 | /** | ||
107 | * Test where we get a peer config from controller | ||
108 | */ | ||
109 | PEER_GETCONFIG, | ||
110 | |||
111 | /** | ||
112 | * Test where we get a peer's identity from controller | ||
113 | */ | ||
114 | PEER_DESTROY, | ||
115 | }; | ||
116 | |||
117 | /** | ||
118 | * Testing status | ||
119 | */ | ||
120 | static enum Test sub_test; | ||
121 | |||
122 | /** | ||
97 | * Shutdown nicely | 123 | * Shutdown nicely |
98 | * | 124 | * |
99 | * @param cls NULL | 125 | * @param cls NULL |
@@ -102,6 +128,7 @@ static int result; | |||
102 | static void | 128 | static void |
103 | do_shutdown (void *cls, const const struct GNUNET_SCHEDULER_TaskContext *tc) | 129 | do_shutdown (void *cls, const const struct GNUNET_SCHEDULER_TaskContext *tc) |
104 | { | 130 | { |
131 | LOG (GNUNET_ERROR_TYPE_DEBUG, "Shutting down...\n"); | ||
105 | if (GNUNET_SCHEDULER_NO_TASK != abort_task) | 132 | if (GNUNET_SCHEDULER_NO_TASK != abort_task) |
106 | GNUNET_SCHEDULER_cancel (abort_task); | 133 | GNUNET_SCHEDULER_cancel (abort_task); |
107 | if (NULL != reg_handle) | 134 | if (NULL != reg_handle) |
@@ -143,12 +170,32 @@ controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | |||
143 | switch (event->type) | 170 | switch (event->type) |
144 | { | 171 | { |
145 | case GNUNET_TESTBED_ET_OPERATION_FINISHED: | 172 | case GNUNET_TESTBED_ET_OPERATION_FINISHED: |
146 | GNUNET_assert (event->details.operation_finished.operation == operation); | 173 | switch(sub_test) |
147 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); | 174 | { |
148 | GNUNET_assert (NULL == event->details.operation_finished.emsg); | 175 | case PEER_GETCONFIG: |
149 | GNUNET_assert (GNUNET_TESTBED_PIT_GENERIC == | 176 | GNUNET_assert (event->details.operation_finished.operation == operation); |
150 | event->details.operation_finished.pit); | 177 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); |
151 | GNUNET_assert (NULL == event->details.operation_finished.op_result.generic); | 178 | GNUNET_assert (NULL == event->details.operation_finished.emsg); |
179 | GNUNET_assert (GNUNET_TESTBED_PIT_CONFIGURATION == | ||
180 | event->details.operation_finished.pit); | ||
181 | GNUNET_assert (NULL != event->details.operation_finished.op_result.cfg); | ||
182 | sub_test = PEER_DESTROY; | ||
183 | operation = GNUNET_TESTBED_peer_destroy (peer); | ||
184 | break; | ||
185 | case PEER_DESTROY: | ||
186 | GNUNET_assert (event->details.operation_finished.operation == operation); | ||
187 | GNUNET_assert (NULL == event->details.operation_finished.op_cls); | ||
188 | GNUNET_assert (NULL == event->details.operation_finished.emsg); | ||
189 | GNUNET_assert (GNUNET_TESTBED_PIT_GENERIC == | ||
190 | event->details.operation_finished.pit); | ||
191 | GNUNET_assert (NULL == | ||
192 | event->details.operation_finished.op_result.generic); | ||
193 | GNUNET_SCHEDULER_add_now (&do_shutdown, NULL); | ||
194 | break; | ||
195 | case OTHER: | ||
196 | GNUNET_assert (0); | ||
197 | break; | ||
198 | } | ||
152 | break; | 199 | break; |
153 | case GNUNET_TESTBED_ET_PEER_START: | 200 | case GNUNET_TESTBED_ET_PEER_START: |
154 | GNUNET_assert (event->details.peer_start.host == host); | 201 | GNUNET_assert (event->details.peer_start.host == host); |
@@ -157,8 +204,11 @@ controller_cb(void *cls, const struct GNUNET_TESTBED_EventInformation *event) | |||
157 | break; | 204 | break; |
158 | case GNUNET_TESTBED_ET_PEER_STOP: | 205 | case GNUNET_TESTBED_ET_PEER_STOP: |
159 | GNUNET_assert (event->details.peer_stop.peer == peer); | 206 | GNUNET_assert (event->details.peer_stop.peer == peer); |
160 | result = GNUNET_YES; | 207 | result = GNUNET_YES; |
161 | GNUNET_SCHEDULER_add_now (&do_shutdown, NULL); | 208 | sub_test = PEER_GETCONFIG; |
209 | operation = | ||
210 | GNUNET_TESTBED_peer_get_information (peer, | ||
211 | GNUNET_TESTBED_PIT_CONFIGURATION); | ||
162 | break; | 212 | break; |
163 | default: | 213 | default: |
164 | GNUNET_assert (0); /* We should never reach this state */ | 214 | GNUNET_assert (0); /* We should never reach this state */ |