summaryrefslogtreecommitdiff
path: root/auto_tests
diff options
context:
space:
mode:
authorirungentoo <irungentoo@gmail.com>2015-02-07 22:57:04 -0500
committerirungentoo <irungentoo@gmail.com>2015-02-07 22:57:04 -0500
commitd9ea6e948531bd3c0ab339e6d6e0b89156fc2e99 (patch)
treeec4f6e892c65289572b306ab76ef420efb78eb3b /auto_tests
parent65cbea38fd7b32d543cb73a72a57854717396393 (diff)
Properly free everything at the end of each test.
Diffstat (limited to 'auto_tests')
-rw-r--r--auto_tests/TCP_test.c16
-rw-r--r--auto_tests/assoc_test.c2
-rw-r--r--auto_tests/onion_test.c49
-rw-r--r--auto_tests/toxav_basic_test.c7
4 files changed, 72 insertions, 2 deletions
diff --git a/auto_tests/TCP_test.c b/auto_tests/TCP_test.c
index 566013d7..e222cf01 100644
--- a/auto_tests/TCP_test.c
+++ b/auto_tests/TCP_test.c
@@ -118,6 +118,7 @@ START_TEST(test_basic)
118 ck_assert_msg(packet_resp_plain[0] == 1, "wrong packet id %u", packet_resp_plain[0]); 118 ck_assert_msg(packet_resp_plain[0] == 1, "wrong packet id %u", packet_resp_plain[0]);
119 ck_assert_msg(packet_resp_plain[1] == 0, "connection not refused %u", packet_resp_plain[1]); 119 ck_assert_msg(packet_resp_plain[1] == 0, "connection not refused %u", packet_resp_plain[1]);
120 ck_assert_msg(memcmp(packet_resp_plain + 2, f_public_key, crypto_box_PUBLICKEYBYTES) == 0, "key in packet wrong"); 120 ck_assert_msg(memcmp(packet_resp_plain + 2, f_public_key, crypto_box_PUBLICKEYBYTES) == 0, "key in packet wrong");
121 kill_TCP_server(tcp_s);
121} 122}
122END_TEST 123END_TEST
123 124
@@ -175,6 +176,12 @@ struct sec_TCP_con *new_TCP_con(TCP_Server *tcp_s)
175 return sec_c; 176 return sec_c;
176} 177}
177 178
179void kill_TCP_con(struct sec_TCP_con *con)
180{
181 kill_sock(con->sock);
182 free(con);
183}
184
178int write_packet_TCP_secure_connection(struct sec_TCP_con *con, uint8_t *data, uint16_t length) 185int write_packet_TCP_secure_connection(struct sec_TCP_con *con, uint8_t *data, uint16_t length)
179{ 186{
180 uint8_t packet[sizeof(uint16_t) + length + crypto_box_MACBYTES]; 187 uint8_t packet[sizeof(uint16_t) + length + crypto_box_MACBYTES];
@@ -290,6 +297,10 @@ START_TEST(test_some)
290 ck_assert_msg(len == sizeof(ping_packet), "wrong len %u", len); 297 ck_assert_msg(len == sizeof(ping_packet), "wrong len %u", len);
291 ck_assert_msg(data[0] == 5, "wrong packet id %u", data[0]); 298 ck_assert_msg(data[0] == 5, "wrong packet id %u", data[0]);
292 ck_assert_msg(memcmp(ping_packet + 1, data + 1, sizeof(uint64_t)) == 0, "wrong packet data"); 299 ck_assert_msg(memcmp(ping_packet + 1, data + 1, sizeof(uint64_t)) == 0, "wrong packet data");
300 kill_TCP_server(tcp_s);
301 kill_TCP_con(con1);
302 kill_TCP_con(con2);
303 kill_TCP_con(con3);
293} 304}
294END_TEST 305END_TEST
295 306
@@ -457,6 +468,9 @@ START_TEST(test_client)
457 do_TCP_connection(conn2); 468 do_TCP_connection(conn2);
458 ck_assert_msg(status_callback_good == 1, "status callback not called"); 469 ck_assert_msg(status_callback_good == 1, "status callback not called");
459 ck_assert_msg(status_callback_status == 1, "wrong status"); 470 ck_assert_msg(status_callback_status == 1, "wrong status");
471 kill_TCP_server(tcp_s);
472 kill_TCP_connection(conn);
473 kill_TCP_connection(conn2);
460} 474}
461END_TEST 475END_TEST
462 476
@@ -488,6 +502,8 @@ START_TEST(test_client_invalid)
488 do_TCP_connection(conn); 502 do_TCP_connection(conn);
489 ck_assert_msg(conn->status == TCP_CLIENT_DISCONNECTED, "Wrong status. Expected: %u, is: %u", TCP_CLIENT_DISCONNECTED, 503 ck_assert_msg(conn->status == TCP_CLIENT_DISCONNECTED, "Wrong status. Expected: %u, is: %u", TCP_CLIENT_DISCONNECTED,
490 conn->status); 504 conn->status);
505
506 kill_TCP_connection(conn);
491} 507}
492END_TEST 508END_TEST
493 509
diff --git a/auto_tests/assoc_test.c b/auto_tests/assoc_test.c
index b377cadf..bcf5d3fa 100644
--- a/auto_tests/assoc_test.c
+++ b/auto_tests/assoc_test.c
@@ -55,6 +55,7 @@ START_TEST(test_basics)
55 55
56 uint8_t found = Assoc_get_close_entries(assoc, &close_entries); 56 uint8_t found = Assoc_get_close_entries(assoc, &close_entries);
57 ck_assert_msg(found == 1, "get_close_entries(): expected %u, got %u", 1, found); 57 ck_assert_msg(found == 1, "get_close_entries(): expected %u, got %u", 1, found);
58 kill_Assoc(assoc);
58} 59}
59END_TEST 60END_TEST
60 61
@@ -130,6 +131,7 @@ START_TEST(test_fillup)
130 131
131 ck_assert_msg(good == 8, "Entries found were not the closest ones. Only %u/8 were.", good); 132 ck_assert_msg(good == 8, "Entries found were not the closest ones. Only %u/8 were.", good);
132 //printf("good: %u %u %u\n", good, a, ((uint32_t)current_time() - a)); 133 //printf("good: %u %u %u\n", good, a, ((uint32_t)current_time() - a));
134 kill_Assoc(assoc);
133} 135}
134END_TEST 136END_TEST
135 137
diff --git a/auto_tests/onion_test.c b/auto_tests/onion_test.c
index 19a0043f..f27fefb8 100644
--- a/auto_tests/onion_test.c
+++ b/auto_tests/onion_test.c
@@ -224,6 +224,39 @@ START_TEST(test_basic)
224 do_onion(onion2); 224 do_onion(onion2);
225 c_sleep(50); 225 c_sleep(50);
226 } 226 }
227
228 kill_onion_announce(onion1_a);
229 kill_onion_announce(onion2_a);
230
231 {
232 Onion *onion = onion1;
233
234 Networking_Core *net = onion->dht->net;
235 DHT *dht = onion->dht;
236 kill_onion(onion);
237 kill_DHT(dht);
238 kill_networking(net);
239 }
240
241 {
242 Onion *onion = onion2;
243
244 Networking_Core *net = onion->dht->net;
245 DHT *dht = onion->dht;
246 kill_onion(onion);
247 kill_DHT(dht);
248 kill_networking(net);
249 }
250
251 {
252 Onion *onion = onion3;
253
254 Networking_Core *net = onion->dht->net;
255 DHT *dht = onion->dht;
256 kill_onion(onion);
257 kill_DHT(dht);
258 kill_networking(net);
259 }
227} 260}
228END_TEST 261END_TEST
229 262
@@ -257,6 +290,18 @@ void do_onions(Onions *on)
257 do_onion_client(on->onion_c); 290 do_onion_client(on->onion_c);
258} 291}
259 292
293void kill_onions(Onions *on)
294{
295 Networking_Core *net = on->onion->dht->net;
296 DHT *dht = on->onion->dht;
297 kill_onion_client(on->onion_c);
298 kill_onion_announce(on->onion_a);
299 kill_onion(on->onion);
300 kill_DHT(dht);
301 kill_networking(net);
302 free(on);
303}
304
260#define NUM_ONIONS 50 305#define NUM_ONIONS 50
261 306
262START_TEST(test_announce) 307START_TEST(test_announce)
@@ -334,6 +379,10 @@ START_TEST(test_announce)
334 } 379 }
335 380
336 ck_assert_msg(ip_port.port == onions[7]->onion->net->port, "Port in returned ip not correct."); 381 ck_assert_msg(ip_port.port == onions[7]->onion->net->port, "Port in returned ip not correct.");
382
383 for (i = 0; i < NUM_ONIONS; ++i) {
384 kill_onions(onions[i]);
385 }
337} 386}
338END_TEST 387END_TEST
339 388
diff --git a/auto_tests/toxav_basic_test.c b/auto_tests/toxav_basic_test.c
index db1db3fb..fe67aca1 100644
--- a/auto_tests/toxav_basic_test.c
+++ b/auto_tests/toxav_basic_test.c
@@ -595,8 +595,11 @@ START_TEST(test_AV_flows)
595 printf("\n"); 595 printf("\n");
596 } 596 }
597 597
598 598 toxav_kill(status_control.Alice.av);
599 599 toxav_kill(status_control.Bob.av);
600 tox_kill(bootstrap_node);
601 tox_kill(Alice);
602 tox_kill(Bob);
600 603
601 printf("Calls ended!\n"); 604 printf("Calls ended!\n");
602} 605}