| 313 int d6a[6] = {52, 54, 56, 62, 64, 75}; |
313 int d6a[6] = {52, 54, 56, 62, 64, 75}; |
| 314 int d7a[6] = {51, 57, 58, 65, 77, 78}; |
314 int d7a[6] = {51, 57, 58, 65, 77, 78}; |
| 315 int d8 = 90; |
315 int d8 = 90; |
| 316 int d9 = 56; |
316 int d9 = 56; |
| 317 int d10a[3] = {67, 75, 90}; |
317 int d10a[3] = {67, 75, 90}; |
| 318 int expected[22] = { |
318 int d11a[6] = {58, 59, 71, 71, 72, 75}; |
| 319 40, 50, 51, 52, 54, 56, 56, 57, 58, 60, |
319 int d12a[3] = {10, 120, 130}; |
| 320 62, 64, 65, 67, 70, 75, 75, 77, 78, 80, 90, 90 |
320 int expected[31] = { |
| |
321 10, 40, 50, 51, 52, 54, 56, 56, 57, 58, 58, 59, 60, 62, 64, 65, 67, |
| |
322 70, 71, 71, 72, 75, 75, 75, 77, 78, 80, 90, 90, 120, 130 |
| 321 }; |
323 }; |
| 322 |
324 |
| 323 CX_ARRAY_DECLARE(int, array); |
325 CX_ARRAY_DECLARE(int, array); |
| 324 cx_array_initialize(array, 4); |
326 cx_array_initialize(array, 4); |
| 325 |
327 |
| 352 CX_TEST_ASSERT(array_size == 19); |
354 CX_TEST_ASSERT(array_size == 19); |
| 353 CX_TEST_ASSERT(array_capacity >= 19); |
355 CX_TEST_ASSERT(array_capacity >= 19); |
| 354 CX_TEST_ASSERT(0 == cx_array_simple_insert_sorted(array, d10a, 3, cx_cmp_int)); |
356 CX_TEST_ASSERT(0 == cx_array_simple_insert_sorted(array, d10a, 3, cx_cmp_int)); |
| 355 CX_TEST_ASSERT(array_size == 22); |
357 CX_TEST_ASSERT(array_size == 22); |
| 356 CX_TEST_ASSERT(array_capacity >= 22); |
358 CX_TEST_ASSERT(array_capacity >= 22); |
| 357 |
359 CX_TEST_ASSERT(0 == cx_array_simple_insert_sorted(array, d11a, 6, cx_cmp_int)); |
| 358 CX_TEST_ASSERT(0 == memcmp(array, expected, 22 * sizeof(int))); |
360 CX_TEST_ASSERT(array_size == 28); |
| |
361 CX_TEST_ASSERT(array_capacity >= 28); |
| |
362 CX_TEST_ASSERT(0 == cx_array_simple_insert_sorted(array, d12a, 3, cx_cmp_int)); |
| |
363 CX_TEST_ASSERT(array_size == 31); |
| |
364 CX_TEST_ASSERT(array_capacity >= 31); |
| |
365 |
| |
366 CX_TEST_ASSERT(0 == memcmp(array, expected, 31 * sizeof(int))); |
| 359 } |
367 } |
| 360 cxFreeDefault(array); |
368 cxFreeDefault(array); |
| 361 } |
369 } |
| 362 |
370 |
| 363 CX_TEST(test_array_insert_unique) { |
371 CX_TEST(test_array_insert_unique) { |
| 369 int d6a[6] = {52, 54, 56, 62, 64, 75}; |
377 int d6a[6] = {52, 54, 56, 62, 64, 75}; |
| 370 int d7a[6] = {51, 57, 58, 65, 77, 78}; |
378 int d7a[6] = {51, 57, 58, 65, 77, 78}; |
| 371 int d8 = 90; |
379 int d8 = 90; |
| 372 int d9 = 56; |
380 int d9 = 56; |
| 373 int d10a[3] = {67, 75, 90}; |
381 int d10a[3] = {67, 75, 90}; |
| 374 int expected[19] = { |
382 int d11a[8] = {90, 90, 90, 95, 95, 100, 110, 110}; |
| 375 40, 50, 51, 52, 54, 56, 57, 58, 60, |
383 int expected[22] = { |
| 376 62, 64, 65, 67, 70, 75, 77, 78, 80, 90 |
384 40, 50, 51, 52, 54, 56, 57, 58, 60, 62, 64, |
| |
385 65, 67, 70, 75, 77, 78, 80, 90, 95, 100, 110 |
| 377 }; |
386 }; |
| 378 |
387 |
| 379 CX_ARRAY_DECLARE(int, array); |
388 CX_ARRAY_DECLARE(int, array); |
| 380 cx_array_initialize(array, 4); |
389 cx_array_initialize(array, 4); |
| 381 |
390 |
| 408 CX_TEST_ASSERT(array_size == 18); |
417 CX_TEST_ASSERT(array_size == 18); |
| 409 CX_TEST_ASSERT(array_capacity >= 18); |
418 CX_TEST_ASSERT(array_capacity >= 18); |
| 410 CX_TEST_ASSERT(0 == cx_array_simple_insert_unique(array, d10a, 3, cx_cmp_int)); |
419 CX_TEST_ASSERT(0 == cx_array_simple_insert_unique(array, d10a, 3, cx_cmp_int)); |
| 411 CX_TEST_ASSERT(array_size == 19); |
420 CX_TEST_ASSERT(array_size == 19); |
| 412 CX_TEST_ASSERT(array_capacity >= 19); |
421 CX_TEST_ASSERT(array_capacity >= 19); |
| 413 |
422 CX_TEST_ASSERT(0 == cx_array_simple_insert_unique(array, d11a, 8, cx_cmp_int)); |
| 414 CX_TEST_ASSERT(0 == memcmp(array, expected, 19 * sizeof(int))); |
423 CX_TEST_ASSERT(array_size == 22); |
| |
424 CX_TEST_ASSERT(array_capacity >= 22); |
| |
425 |
| |
426 CX_TEST_ASSERT(0 == memcmp(array, expected, 22 * sizeof(int))); |
| 415 } |
427 } |
| 416 cxFreeDefault(array); |
428 cxFreeDefault(array); |
| 417 } |
429 } |
| 418 |
430 |
| 419 CX_TEST(test_array_binary_search) { |
431 CX_TEST(test_array_binary_search) { |