summaryrefslogtreecommitdiff
path: root/auto_tests
diff options
context:
space:
mode:
Diffstat (limited to 'auto_tests')
-rw-r--r--auto_tests/toxav_basic_test.c77
-rw-r--r--auto_tests/toxav_many_test.c36
2 files changed, 58 insertions, 55 deletions
diff --git a/auto_tests/toxav_basic_test.c b/auto_tests/toxav_basic_test.c
index 423cd03d..bdf6c920 100644
--- a/auto_tests/toxav_basic_test.c
+++ b/auto_tests/toxav_basic_test.c
@@ -9,7 +9,6 @@
9#include <check.h> 9#include <check.h>
10#include <stdlib.h> 10#include <stdlib.h>
11#include <time.h> 11#include <time.h>
12#include <assert.h>
13 12
14#include <vpx/vpx_image.h> 13#include <vpx/vpx_image.h>
15 14
@@ -103,7 +102,7 @@ void t_accept_friend_request_cb(Tox *m, const uint8_t *public_key, const uint8_t
103 (void) userdata; 102 (void) userdata;
104 103
105 if (length == 7 && memcmp("gentoo", data, 7) == 0) { 104 if (length == 7 && memcmp("gentoo", data, 7) == 0) {
106 assert(tox_friend_add_norequest(m, public_key, NULL) != (uint32_t) ~0); 105 ck_assert(tox_friend_add_norequest(m, public_key, NULL) != (uint32_t) ~0);
107 } 106 }
108} 107}
109 108
@@ -133,13 +132,13 @@ START_TEST(test_AV_flows)
133 TOX_ERR_NEW error; 132 TOX_ERR_NEW error;
134 133
135 bootstrap = tox_new(NULL, NULL, 0, &error); 134 bootstrap = tox_new(NULL, NULL, 0, &error);
136 assert(error == TOX_ERR_NEW_OK); 135 ck_assert(error == TOX_ERR_NEW_OK);
137 136
138 Alice = tox_new(NULL, NULL, 0, &error); 137 Alice = tox_new(NULL, NULL, 0, &error);
139 assert(error == TOX_ERR_NEW_OK); 138 ck_assert(error == TOX_ERR_NEW_OK);
140 139
141 Bob = tox_new(NULL, NULL, 0, &error); 140 Bob = tox_new(NULL, NULL, 0, &error);
142 assert(error == TOX_ERR_NEW_OK); 141 ck_assert(error == TOX_ERR_NEW_OK);
143 } 142 }
144 143
145 printf("Created 3 instances of Tox\n"); 144 printf("Created 3 instances of Tox\n");
@@ -153,7 +152,7 @@ START_TEST(test_AV_flows)
153 tox_self_get_address(Alice, address); 152 tox_self_get_address(Alice, address);
154 153
155 154
156 assert(tox_friend_add(Bob, address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0); 155 ck_assert(tox_friend_add(Bob, address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0);
157 156
158 uint8_t off = 1; 157 uint8_t off = 1;
159 158
@@ -178,10 +177,10 @@ START_TEST(test_AV_flows)
178 { 177 {
179 TOXAV_ERR_NEW error; 178 TOXAV_ERR_NEW error;
180 AliceAV = toxav_new(Alice, &error); 179 AliceAV = toxav_new(Alice, &error);
181 assert(error == TOXAV_ERR_NEW_OK); 180 ck_assert(error == TOXAV_ERR_NEW_OK);
182 181
183 BobAV = toxav_new(Bob, &error); 182 BobAV = toxav_new(Bob, &error);
184 assert(error == TOXAV_ERR_NEW_OK); 183 ck_assert(error == TOXAV_ERR_NEW_OK);
185 } 184 }
186 185
187 toxav_callback_call(AliceAV, t_toxav_call_cb, &AliceCC); 186 toxav_callback_call(AliceAV, t_toxav_call_cb, &AliceCC);
@@ -208,7 +207,7 @@ START_TEST(test_AV_flows)
208 \ 207 \
209 if (rc != TOXAV_ERR_CALL_OK) { \ 208 if (rc != TOXAV_ERR_CALL_OK) { \
210 printf("toxav_call failed: %d\n", rc); \ 209 printf("toxav_call failed: %d\n", rc); \
211 exit(1); \ 210 ck_assert(0); \
212 } \ 211 } \
213 \ 212 \
214 \ 213 \
@@ -223,7 +222,7 @@ START_TEST(test_AV_flows)
223 \ 222 \
224 if (rc != TOXAV_ERR_ANSWER_OK) { \ 223 if (rc != TOXAV_ERR_ANSWER_OK) { \
225 printf("toxav_answer failed: %d\n", rc); \ 224 printf("toxav_answer failed: %d\n", rc); \
226 exit(1); \ 225 ck_assert(0); \
227 } \ 226 } \
228 BobCC.incoming = false; \ 227 BobCC.incoming = false; \
229 } else { \ 228 } else { \
@@ -236,7 +235,7 @@ START_TEST(test_AV_flows)
236 \ 235 \
237 if (rc != TOXAV_ERR_CALL_CONTROL_OK) { \ 236 if (rc != TOXAV_ERR_CALL_CONTROL_OK) { \
238 printf("toxav_call_control failed: %d\n", rc); \ 237 printf("toxav_call_control failed: %d\n", rc); \
239 exit(1); \ 238 ck_assert(0); \
240 } \ 239 } \
241 } \ 240 } \
242 } \ 241 } \
@@ -275,7 +274,7 @@ START_TEST(test_AV_flows)
275 274
276 if (rc != TOXAV_ERR_CALL_OK) { 275 if (rc != TOXAV_ERR_CALL_OK) {
277 printf("toxav_call failed: %d\n", rc); 276 printf("toxav_call failed: %d\n", rc);
278 exit(1); 277 ck_assert(0);
279 } 278 }
280 } 279 }
281 280
@@ -289,7 +288,7 @@ START_TEST(test_AV_flows)
289 288
290 if (rc != TOXAV_ERR_CALL_CONTROL_OK) { 289 if (rc != TOXAV_ERR_CALL_CONTROL_OK) {
291 printf("toxav_call_control failed: %d\n", rc); 290 printf("toxav_call_control failed: %d\n", rc);
292 exit(1); 291 ck_assert(0);
293 } 292 }
294 } 293 }
295 294
@@ -311,7 +310,7 @@ START_TEST(test_AV_flows)
311 310
312 if (rc != TOXAV_ERR_CALL_OK) { 311 if (rc != TOXAV_ERR_CALL_OK) {
313 printf("toxav_call failed: %d\n", rc); 312 printf("toxav_call failed: %d\n", rc);
314 exit(1); 313 ck_assert(0);
315 } 314 }
316 } 315 }
317 316
@@ -325,7 +324,7 @@ START_TEST(test_AV_flows)
325 324
326 if (rc != TOXAV_ERR_CALL_CONTROL_OK) { 325 if (rc != TOXAV_ERR_CALL_CONTROL_OK) {
327 printf("toxav_call_control failed: %d\n", rc); 326 printf("toxav_call_control failed: %d\n", rc);
328 exit(1); 327 ck_assert(0);
329 } 328 }
330 } 329 }
331 330
@@ -349,7 +348,7 @@ START_TEST(test_AV_flows)
349 348
350 if (rc != TOXAV_ERR_CALL_OK) { 349 if (rc != TOXAV_ERR_CALL_OK) {
351 printf("toxav_call failed: %d\n", rc); 350 printf("toxav_call failed: %d\n", rc);
352 exit(1); 351 ck_assert(0);
353 } 352 }
354 } 353 }
355 354
@@ -357,10 +356,10 @@ START_TEST(test_AV_flows)
357 iterate_tox(bootstrap, Alice, Bob); 356 iterate_tox(bootstrap, Alice, Bob);
358 357
359 /* At first try all stuff while in invalid state */ 358 /* At first try all stuff while in invalid state */
360 assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_PAUSE, NULL)); 359 ck_assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_PAUSE, NULL));
361 assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_RESUME, NULL)); 360 ck_assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_RESUME, NULL));
362 assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL)); 361 ck_assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL));
363 assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_VIDEO, NULL)); 362 ck_assert(!toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_HIDE_VIDEO, NULL));
364 363
365 { 364 {
366 TOXAV_ERR_ANSWER rc; 365 TOXAV_ERR_ANSWER rc;
@@ -368,7 +367,7 @@ START_TEST(test_AV_flows)
368 367
369 if (rc != TOXAV_ERR_ANSWER_OK) { 368 if (rc != TOXAV_ERR_ANSWER_OK) {
370 printf("toxav_answer failed: %d\n", rc); 369 printf("toxav_answer failed: %d\n", rc);
371 exit(1); 370 ck_assert(0);
372 } 371 }
373 } 372 }
374 373
@@ -376,36 +375,36 @@ START_TEST(test_AV_flows)
376 375
377 /* Pause and Resume */ 376 /* Pause and Resume */
378 printf("Pause and Resume\n"); 377 printf("Pause and Resume\n");
379 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_PAUSE, NULL)); 378 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_PAUSE, NULL));
380 iterate_tox(bootstrap, Alice, Bob); 379 iterate_tox(bootstrap, Alice, Bob);
381 assert(BobCC.state == TOXAV_CALL_STATE_PAUSED); 380 ck_assert(BobCC.state == TOXAV_CALL_STATE_PAUSED);
382 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_RESUME, NULL)); 381 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_RESUME, NULL));
383 iterate_tox(bootstrap, Alice, Bob); 382 iterate_tox(bootstrap, Alice, Bob);
384 assert(BobCC.state & (TOXAV_CALL_STATE_SENDING_A | TOXAV_CALL_STATE_SENDING_V)); 383 ck_assert(BobCC.state & (TOXAV_CALL_STATE_SENDING_A | TOXAV_CALL_STATE_SENDING_V));
385 384
386 /* Mute/Unmute single */ 385 /* Mute/Unmute single */
387 printf("Mute/Unmute single\n"); 386 printf("Mute/Unmute single\n");
388 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL)); 387 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL));
389 iterate_tox(bootstrap, Alice, Bob); 388 iterate_tox(bootstrap, Alice, Bob);
390 assert(BobCC.state ^ TOXAV_CALL_STATE_RECEIVING_A); 389 ck_assert(BobCC.state ^ TOXAV_CALL_STATE_RECEIVING_A);
391 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL)); 390 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL));
392 iterate_tox(bootstrap, Alice, Bob); 391 iterate_tox(bootstrap, Alice, Bob);
393 assert(BobCC.state & TOXAV_CALL_STATE_RECEIVING_A); 392 ck_assert(BobCC.state & TOXAV_CALL_STATE_RECEIVING_A);
394 393
395 /* Mute/Unmute both */ 394 /* Mute/Unmute both */
396 printf("Mute/Unmute both\n"); 395 printf("Mute/Unmute both\n");
397 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL)); 396 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL));
398 iterate_tox(bootstrap, Alice, Bob); 397 iterate_tox(bootstrap, Alice, Bob);
399 assert(BobCC.state ^ TOXAV_CALL_STATE_RECEIVING_A); 398 ck_assert(BobCC.state ^ TOXAV_CALL_STATE_RECEIVING_A);
400 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_VIDEO, NULL)); 399 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_HIDE_VIDEO, NULL));
401 iterate_tox(bootstrap, Alice, Bob); 400 iterate_tox(bootstrap, Alice, Bob);
402 assert(BobCC.state ^ TOXAV_CALL_STATE_RECEIVING_V); 401 ck_assert(BobCC.state ^ TOXAV_CALL_STATE_RECEIVING_V);
403 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL)); 402 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_AUDIO, NULL));
404 iterate_tox(bootstrap, Alice, Bob); 403 iterate_tox(bootstrap, Alice, Bob);
405 assert(BobCC.state & TOXAV_CALL_STATE_RECEIVING_A); 404 ck_assert(BobCC.state & TOXAV_CALL_STATE_RECEIVING_A);
406 assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_MUTE_VIDEO, NULL)); 405 ck_assert(toxav_call_control(AliceAV, 0, TOXAV_CALL_CONTROL_TOGGLE_HIDE_VIDEO, NULL));
407 iterate_tox(bootstrap, Alice, Bob); 406 iterate_tox(bootstrap, Alice, Bob);
408 assert(BobCC.state & TOXAV_CALL_STATE_RECEIVING_V); 407 ck_assert(BobCC.state & TOXAV_CALL_STATE_RECEIVING_V);
409 408
410 { 409 {
411 TOXAV_ERR_CALL_CONTROL rc; 410 TOXAV_ERR_CALL_CONTROL rc;
@@ -413,12 +412,12 @@ START_TEST(test_AV_flows)
413 412
414 if (rc != TOXAV_ERR_CALL_CONTROL_OK) { 413 if (rc != TOXAV_ERR_CALL_CONTROL_OK) {
415 printf("toxav_call_control failed: %d\n", rc); 414 printf("toxav_call_control failed: %d\n", rc);
416 exit(1); 415 ck_assert(0);
417 } 416 }
418 } 417 }
419 418
420 iterate_tox(bootstrap, Alice, Bob); 419 iterate_tox(bootstrap, Alice, Bob);
421 assert(BobCC.state == TOXAV_CALL_STATE_END); 420 ck_assert(BobCC.state == TOXAV_CALL_STATE_END);
422 421
423 printf("Success!\n"); 422 printf("Success!\n");
424 } 423 }
diff --git a/auto_tests/toxav_many_test.c b/auto_tests/toxav_many_test.c
index 84f94e96..f913c9d3 100644
--- a/auto_tests/toxav_many_test.c
+++ b/auto_tests/toxav_many_test.c
@@ -9,10 +9,11 @@
9#include <check.h> 9#include <check.h>
10#include <stdlib.h> 10#include <stdlib.h>
11#include <time.h> 11#include <time.h>
12#include <assert.h>
13 12
14#include <vpx/vpx_image.h> 13#include <vpx/vpx_image.h>
15 14
15#include "helpers.h"
16
16#include "../toxcore/tox.h" 17#include "../toxcore/tox.h"
17#include "../toxcore/util.h" 18#include "../toxcore/util.h"
18#include "../toxcore/logger.h" 19#include "../toxcore/logger.h"
@@ -97,7 +98,7 @@ void t_accept_friend_request_cb(Tox *m, const uint8_t *public_key, const uint8_t
97{ 98{
98 (void) userdata; 99 (void) userdata;
99 if (length == 7 && memcmp("gentoo", data, 7) == 0) { 100 if (length == 7 && memcmp("gentoo", data, 7) == 0) {
100 assert(tox_friend_add_norequest(m, public_key, NULL) != (uint32_t) ~0); 101 ck_assert(tox_friend_add_norequest(m, public_key, NULL) != (uint32_t) ~0);
101 } 102 }
102} 103}
103 104
@@ -110,7 +111,7 @@ ToxAV* setup_av_instance(Tox* tox, CallControl *CC)
110 TOXAV_ERR_NEW error; 111 TOXAV_ERR_NEW error;
111 112
112 ToxAV* av = toxav_new(tox, &error); 113 ToxAV* av = toxav_new(tox, &error);
113 assert(error == TOXAV_ERR_NEW_OK); 114 ck_assert(error == TOXAV_ERR_NEW_OK);
114 115
115 toxav_callback_call(av, t_toxav_call_cb, CC); 116 toxav_callback_call(av, t_toxav_call_cb, CC);
116 toxav_callback_call_state(av, t_toxav_call_state_cb, CC); 117 toxav_callback_call_state(av, t_toxav_call_state_cb, CC);
@@ -137,7 +138,7 @@ void* call_thread(void* pd)
137 138
138 if (rc != TOXAV_ERR_CALL_OK) { 139 if (rc != TOXAV_ERR_CALL_OK) {
139 printf("toxav_call failed: %d\n", rc); 140 printf("toxav_call failed: %d\n", rc);
140 exit(1); 141 ck_assert(0);
141 } 142 }
142 } 143 }
143 144
@@ -150,7 +151,7 @@ void* call_thread(void* pd)
150 151
151 if (rc != TOXAV_ERR_ANSWER_OK) { 152 if (rc != TOXAV_ERR_ANSWER_OK) {
152 printf("toxav_answer failed: %d\n", rc); 153 printf("toxav_answer failed: %d\n", rc);
153 exit(1); 154 ck_assert(0);
154 } 155 }
155 } 156 }
156 157
@@ -167,7 +168,7 @@ void* call_thread(void* pd)
167 memset(video_v, 0, sizeof(video_v)); 168 memset(video_v, 0, sizeof(video_v));
168 169
169 time_t start_time = time(NULL); 170 time_t start_time = time(NULL);
170 while(time(NULL) - start_time < 9) { 171 while(time(NULL) - start_time < 4) {
171 toxav_iterate(AliceAV); 172 toxav_iterate(AliceAV);
172 toxav_iterate(BobAV); 173 toxav_iterate(BobAV);
173 174
@@ -186,11 +187,13 @@ void* call_thread(void* pd)
186 187
187 if (rc != TOXAV_ERR_CALL_CONTROL_OK) { 188 if (rc != TOXAV_ERR_CALL_CONTROL_OK) {
188 printf("toxav_call_control failed: %d\n", rc); 189 printf("toxav_call_control failed: %d\n", rc);
189 exit(1); 190 ck_assert(0);
190 } 191 }
191 } 192 }
192 193
193 c_sleep(30); 194 c_sleep(30);
195
196 printf ("Closing thread\n");
194 pthread_exit(NULL); 197 pthread_exit(NULL);
195} 198}
196 199
@@ -206,19 +209,19 @@ START_TEST(test_AV_three_calls)
206 TOX_ERR_NEW error; 209 TOX_ERR_NEW error;
207 210
208 bootstrap = tox_new(NULL, NULL, 0, &error); 211 bootstrap = tox_new(NULL, NULL, 0, &error);
209 assert(error == TOX_ERR_NEW_OK); 212 ck_assert(error == TOX_ERR_NEW_OK);
210 213
211 Alice = tox_new(NULL, NULL, 0, &error); 214 Alice = tox_new(NULL, NULL, 0, &error);
212 assert(error == TOX_ERR_NEW_OK); 215 ck_assert(error == TOX_ERR_NEW_OK);
213 216
214 Bobs[0] = tox_new(NULL, NULL, 0, &error); 217 Bobs[0] = tox_new(NULL, NULL, 0, &error);
215 assert(error == TOX_ERR_NEW_OK); 218 ck_assert(error == TOX_ERR_NEW_OK);
216 219
217 Bobs[1] = tox_new(NULL, NULL, 0, &error); 220 Bobs[1] = tox_new(NULL, NULL, 0, &error);
218 assert(error == TOX_ERR_NEW_OK); 221 ck_assert(error == TOX_ERR_NEW_OK);
219 222
220 Bobs[2] = tox_new(NULL, NULL, 0, &error); 223 Bobs[2] = tox_new(NULL, NULL, 0, &error);
221 assert(error == TOX_ERR_NEW_OK); 224 ck_assert(error == TOX_ERR_NEW_OK);
222 } 225 }
223 226
224 printf("Created 5 instances of Tox\n"); 227 printf("Created 5 instances of Tox\n");
@@ -232,9 +235,9 @@ START_TEST(test_AV_three_calls)
232 tox_self_get_address(Alice, address); 235 tox_self_get_address(Alice, address);
233 236
234 237
235 assert(tox_friend_add(Bobs[0], address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0); 238 ck_assert(tox_friend_add(Bobs[0], address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0);
236 assert(tox_friend_add(Bobs[1], address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0); 239 ck_assert(tox_friend_add(Bobs[1], address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0);
237 assert(tox_friend_add(Bobs[2], address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0); 240 ck_assert(tox_friend_add(Bobs[2], address, (uint8_t *)"gentoo", 7, NULL) != (uint32_t) ~0);
238 241
239 uint8_t off = 1; 242 uint8_t off = 1;
240 243
@@ -302,7 +305,7 @@ START_TEST(test_AV_three_calls)
302 (void) pthread_detach(tids[2]); 305 (void) pthread_detach(tids[2]);
303 306
304 time_t start_time = time(NULL); 307 time_t start_time = time(NULL);
305 while (time(NULL) - start_time < 10) { 308 while (time(NULL) - start_time < 5) {
306 tox_iterate(Alice); 309 tox_iterate(Alice);
307 tox_iterate(Bobs[0]); 310 tox_iterate(Bobs[0]);
308 tox_iterate(Bobs[1]); 311 tox_iterate(Bobs[1]);
@@ -314,6 +317,7 @@ START_TEST(test_AV_three_calls)
314 (void) pthread_join(tids[1], NULL); 317 (void) pthread_join(tids[1], NULL);
315 (void) pthread_join(tids[2], NULL); 318 (void) pthread_join(tids[2], NULL);
316 319
320 printf ("Killing all instances\n");
317 toxav_kill(BobsAV[0]); 321 toxav_kill(BobsAV[0]);
318 toxav_kill(BobsAV[1]); 322 toxav_kill(BobsAV[1]);
319 toxav_kill(BobsAV[2]); 323 toxav_kill(BobsAV[2]);