test/main.c

Sat, 12 May 2018 14:56:17 +0200

author
Mike Becker <universe@uap-core.de>
date
Sat, 12 May 2018 14:56:17 +0200
changeset 299
e7dfcf229625
parent 290
d5d6ab809ad3
child 323
b8c49e7a1dba
permissions
-rw-r--r--

adjusts code sample for UcxMap

0
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
1 /*
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
2 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
3 *
259
2f5dea574a75 modules documentation
Mike Becker <universe@uap-core.de>
parents: 254
diff changeset
4 * Copyright 2017 Mike Becker, Olaf Wintermann All rights reserved.
0
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
5 *
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
6 * Redistribution and use in source and binary forms, with or without
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
7 * modification, are permitted provided that the following conditions are met:
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
8 *
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
9 * 1. Redistributions of source code must retain the above copyright
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
10 * notice, this list of conditions and the following disclaimer.
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
11 *
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
12 * 2. Redistributions in binary form must reproduce the above copyright
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
13 * notice, this list of conditions and the following disclaimer in the
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
14 * documentation and/or other materials provided with the distribution.
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
15 *
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
16 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
17 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
18 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
19 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
20 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
21 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
22 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
23 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
24 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
25 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
26 * POSSIBILITY OF SUCH DAMAGE.
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
27 */
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
28
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
29 #include <stdio.h>
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
30 #include <stdlib.h>
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
31
251
fae240d633fc changes source directory structure in preperation for autotools rollout
Mike Becker <universe@uap-core.de>
parents: 250
diff changeset
32 #include <ucx/test.h>
26
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
33
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
34 #include "main.h"
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
35
164
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
36 #include "allocator_tests.h"
54
f634f790661a added logging API
Mike Becker <universe@uap-core.de>
parents: 53
diff changeset
37 #include "logging_tests.h"
122
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
38 #include "list_tests.h"
39
bf8ab7bb74ff added sstrsplit function
Mike Becker <universe@uap-core.de>
parents: 36
diff changeset
39 #include "string_tests.h"
13
98ac89e3aa37 Added mempool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 12
diff changeset
40 #include "mpool_tests.h"
185
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
41 #include "stack_tests.h"
20
db7d9860dbbd added some map functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
42 #include "map_tests.h"
108
d2b1e67b2b48 new properties parser
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 103
diff changeset
43 #include "prop_tests.h"
60
abae4669fba7 renamed UcxMemstream to UcxBuffer
Mike Becker <universe@uap-core.de>
parents: 58
diff changeset
44 #include "buffer_tests.h"
142
ee8cb27d8b8e added printf functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 140
diff changeset
45 #include "utils_tests.h"
198
b0f4fb043b47 added test for ucx_avl_put
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 192
diff changeset
46 #include "avl_tests.h"
9
013c5c4b7e44 Added dlist tests
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 0
diff changeset
47
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
48 #ifdef __cplusplus
253
e19825a1430a removes unnecessary macros from ucx.h + removes the usage of restrict and _Bool completely, instead of defining macros
Mike Becker <universe@uap-core.de>
parents: 252
diff changeset
49 extern "C" {
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
50 #endif
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
51 UCX_TEST(testTestSuitePositive) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
52 UCX_TEST_BEGIN
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
53 UCX_TEST_ASSERT(2*2 == 4, "the test framework fails");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
54 UCX_TEST_END
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
55 }
26
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
56
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
57 UCX_TEST(testTestSuiteNegative) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
58 UCX_TEST_BEGIN
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
59 UCX_TEST_ASSERT(2*(-2) == 4, "the test framework works");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
60 UCX_TEST_END
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
61 }
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
62
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
63 UCX_TEST_SUBROUTINE(testTestSuiteRoutineRoutine, float f) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
64 UCX_TEST_ASSERT(f == 3.14f, "calling routine in a routine fails");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
65 }
88
18823857ce79 variadic test subroutines
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
66
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
67 UCX_TEST_SUBROUTINE(testTestSuiteRoutine2Param, int i, float f) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
68 UCX_TEST_ASSERT(i == 42, "two parameter routine fails");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
69 UCX_TEST_CALL_SUBROUTINE(testTestSuiteRoutineRoutine, f);
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
70 }
88
18823857ce79 variadic test subroutines
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
71
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
72 UCX_TEST_SUBROUTINE(testTestSuiteRoutineSuccess, int* i) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
73 *i += 2;
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
74 UCX_TEST_ASSERT(*i==4, "the test framework fails");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
75 }
33
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
76
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
77 UCX_TEST_SUBROUTINE(testTestSuiteRoutineFailure, int* i) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
78 *i += 2;
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
79 // Next test shall fail!
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
80 UCX_TEST_ASSERT(*i==4, "the test framework works");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
81 }
253
e19825a1430a removes unnecessary macros from ucx.h + removes the usage of restrict and _Bool completely, instead of defining macros
Mike Becker <universe@uap-core.de>
parents: 252
diff changeset
82
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
83 UCX_TEST(testTestSuiteRoutinePositive) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
84 int i = 2;
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
85 UCX_TEST_BEGIN
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
86 UCX_TEST_CALL_SUBROUTINE(testTestSuiteRoutineSuccess, &i);
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
87 UCX_TEST_ASSERT(i==4, "the test framework fails");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
88 UCX_TEST_END
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
89 }
33
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
90
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
91 UCX_TEST(testTestSuiteRoutineNegative) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
92 int i = 0;
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
93 UCX_TEST_BEGIN
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
94 UCX_TEST_CALL_SUBROUTINE(testTestSuiteRoutineFailure, &i);
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
95 UCX_TEST_ASSERT(1, "the test framework fails");
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
96 UCX_TEST_END
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
97 }
33
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
98
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
99 UCX_TEST(testTestSuiteRoutineMultiparam) {
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
100 UCX_TEST_BEGIN
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
101 UCX_TEST_CALL_SUBROUTINE(testTestSuiteRoutine2Param, 42, 3.14f);
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
102 UCX_TEST_END
88
18823857ce79 variadic test subroutines
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
103 }
254
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
104 #ifdef __cplusplus
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
105 }
c45c385ac578 fixes include path and non-cpp build for test program
Mike Becker <universe@uap-core.de>
parents: 253
diff changeset
106 #endif
88
18823857ce79 variadic test subroutines
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
107
0
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
108 int main(int argc, char **argv) {
13
98ac89e3aa37 Added mempool
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 12
diff changeset
109 printf("UCX Tests\n---------\n");
9
013c5c4b7e44 Added dlist tests
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 0
diff changeset
110
33
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
111 printf("\nUcxTestSuite tests (2 failures are intended!)\n");
26
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
112 UcxTestSuite* suite = ucx_test_suite_new();
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
113 ucx_test_register(suite, testTestSuitePositive);
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
114 ucx_test_register(suite, testTestSuiteNegative);
33
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
115 ucx_test_register(suite, testTestSuiteRoutinePositive);
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
116 ucx_test_register(suite, testTestSuiteRoutineNegative);
88
18823857ce79 variadic test subroutines
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
117 ucx_test_register(suite, testTestSuiteRoutineMultiparam);
26
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
118 ucx_test_run(suite, stdout);
88
18823857ce79 variadic test subroutines
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
119 if (suite->failure == 2 && suite->success == 3) {
26
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
120 ucx_test_suite_free(suite);
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
121
28
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
122 printf("\nLibrary function tests\n");
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
123 suite = ucx_test_suite_new();
164
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
124 /* UcxAllocator Tests */
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
125 ucx_test_register(suite, test_ucx_default_allocator);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
126
97
499e1b465d77 fixed execution order of tests + added test for sstrtrim
Mike Becker <universe@uap-core.de>
parents: 94
diff changeset
127 /* sstring Tests */
283
c3b6ff227481 adds more convenience macros for sstr
Mike Becker <universe@uap-core.de>
parents: 259
diff changeset
128 ucx_test_register(suite, test_sstr_macros);
97
499e1b465d77 fixed execution order of tests + added test for sstrtrim
Mike Becker <universe@uap-core.de>
parents: 94
diff changeset
129 ucx_test_register(suite, test_sstr);
179
ee25d79a4187 removed old sstrncat
Mike Becker <universe@uap-core.de>
parents: 177
diff changeset
130 ucx_test_register(suite, test_sstr_len);
149
3bf87676d42d added sstrcasecmp
Mike Becker <universe@uap-core.de>
parents: 148
diff changeset
131 ucx_test_register(suite, test_sstrcmp);
3bf87676d42d added sstrcasecmp
Mike Becker <universe@uap-core.de>
parents: 148
diff changeset
132 ucx_test_register(suite, test_sstrcasecmp);
180
2185f19dcc45 added new sstrcat
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 179
diff changeset
133 ucx_test_register(suite, test_sstrcat);
149
3bf87676d42d added sstrcasecmp
Mike Becker <universe@uap-core.de>
parents: 148
diff changeset
134 ucx_test_register(suite, test_sstrchr_sstrrchr);
214
2bc19726c340 added sstrstr() function + improved sstrsplit variants by using sstrprefix()
Mike Becker <universe@uap-core.de>
parents: 206
diff changeset
135 ucx_test_register(suite, test_sstrstr);
97
499e1b465d77 fixed execution order of tests + added test for sstrtrim
Mike Becker <universe@uap-core.de>
parents: 94
diff changeset
136 ucx_test_register(suite, test_sstrsplit);
499e1b465d77 fixed execution order of tests + added test for sstrtrim
Mike Becker <universe@uap-core.de>
parents: 94
diff changeset
137 ucx_test_register(suite, test_sstrtrim);
146
aa376dba1ba8 fixed documentation for netbeans parser + added sstrprefix() and sstrsuffix()
Mike Becker <universe@uap-core.de>
parents: 142
diff changeset
138 ucx_test_register(suite, test_sstrprefixsuffix);
97
499e1b465d77 fixed execution order of tests + added test for sstrtrim
Mike Becker <universe@uap-core.de>
parents: 94
diff changeset
139
54
f634f790661a added logging API
Mike Becker <universe@uap-core.de>
parents: 53
diff changeset
140 /* UcxLogger Tests */
170
5fbb9efebe4a improved logger tests
Mike Becker <universe@uap-core.de>
parents: 168
diff changeset
141 ucx_test_register(suite, test_ucx_logger_new);
54
f634f790661a added logging API
Mike Becker <universe@uap-core.de>
parents: 53
diff changeset
142 ucx_test_register(suite, test_ucx_logger_log);
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
143
123
7fb0f74517c5 changed signature of sstrncat + some documentation for UcxList + new features for UcxList
Mike Becker <universe@uap-core.de>
parents: 122
diff changeset
144 /* UcxList Tests */
122
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
145 ucx_test_register(suite, test_ucx_list_append);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
146 ucx_test_register(suite, test_ucx_list_prepend);
228
9f385abc72fb adds ucx_list_append_once() and ucx_list_prepend_once()
Mike Becker <universe@uap-core.de>
parents: 225
diff changeset
147 ucx_test_register(suite, test_ucx_list_append_once);
122
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
148 ucx_test_register(suite, test_ucx_list_equals);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
149 ucx_test_register(suite, test_ucx_list_concat);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
150 ucx_test_register(suite, test_ucx_list_size);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
151 ucx_test_register(suite, test_ucx_list_first);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
152 ucx_test_register(suite, test_ucx_list_last);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
153 ucx_test_register(suite, test_ucx_list_get);
123
7fb0f74517c5 changed signature of sstrncat + some documentation for UcxList + new features for UcxList
Mike Becker <universe@uap-core.de>
parents: 122
diff changeset
154 ucx_test_register(suite, test_ucx_list_indexof);
7fb0f74517c5 changed signature of sstrncat + some documentation for UcxList + new features for UcxList
Mike Becker <universe@uap-core.de>
parents: 122
diff changeset
155 ucx_test_register(suite, test_ucx_list_find);
122
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
156 ucx_test_register(suite, test_ucx_list_contains);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
157 ucx_test_register(suite, test_ucx_list_remove);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
158 ucx_test_register(suite, test_ucx_list_clone);
540d99722f1f removal of single linked list implemenation - step 2: renamed UcxDlist to UcxList (new single implementation)
Mike Becker <universe@uap-core.de>
parents: 121
diff changeset
159 ucx_test_register(suite, test_ucx_list_sort);
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
160
28
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
161 /* UcxMemPool Tests */
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
162 ucx_test_register(suite, test_ucx_mempool_new);
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
163 ucx_test_register(suite, test_ucx_mempool_malloc);
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
164 ucx_test_register(suite, test_ucx_mempool_malloc_with_chcap);
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
165 ucx_test_register(suite, test_ucx_mempool_calloc);
113
8693d7874773 added mempool allocator
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 112
diff changeset
166 ucx_test_register(suite, test_ucx_mempool_free);
28
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
167 ucx_test_register(suite, test_ucx_mempool_set_destr);
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
168 ucx_test_register(suite, test_ucx_mempool_reg_destr);
1666cbeb1db8 new mempool tests
Mike Becker <universe@uap-core.de>
parents: 27
diff changeset
169 ucx_test_register(suite, test_ucx_mempool_realloc);
185
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
170
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
171 /* UcxStack Tests */
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
172 ucx_test_register(suite, test_ucx_stack_init);
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
173 ucx_test_register(suite, test_ucx_stack_malloc);
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
174 ucx_test_register(suite, test_ucx_stack_calloc);
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
175 ucx_test_register(suite, test_ucx_stack_free);
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
176 ucx_test_register(suite, test_ucx_stack_realloc);
a48428642b4e added stack implementation + added g++ config and added some fixes for C++
Mike Becker <universe@uap-core.de>
parents: 180
diff changeset
177 ucx_test_register(suite, test_ucx_stack_pop);
20
db7d9860dbbd added some map functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
178
29
bce0d7f2912b fixed map with the help of new tests
Mike Becker <universe@uap-core.de>
parents: 28
diff changeset
179 /* UcxMap Tests */
bce0d7f2912b fixed map with the help of new tests
Mike Becker <universe@uap-core.de>
parents: 28
diff changeset
180 ucx_test_register(suite, test_ucx_map_new);
bce0d7f2912b fixed map with the help of new tests
Mike Becker <universe@uap-core.de>
parents: 28
diff changeset
181 ucx_test_register(suite, test_ucx_key);
bce0d7f2912b fixed map with the help of new tests
Mike Becker <universe@uap-core.de>
parents: 28
diff changeset
182 ucx_test_register(suite, test_ucx_map_put);
bce0d7f2912b fixed map with the help of new tests
Mike Becker <universe@uap-core.de>
parents: 28
diff changeset
183 ucx_test_register(suite, test_ucx_map_get);
53
e533c170bfb8 added ucx_map_remove
Mike Becker <universe@uap-core.de>
parents: 51
diff changeset
184 ucx_test_register(suite, test_ucx_map_remove);
206
58b77eb51afd added ucx_map_clean()
Mike Becker <universe@uap-core.de>
parents: 200
diff changeset
185 ucx_test_register(suite, test_ucx_map_clear);
31
91ac86557290 added map iterator
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 29
diff changeset
186 ucx_test_register(suite, test_ucx_map_iterator);
33
9c219a62070d major refactoring of test framework
Mike Becker <universe@uap-core.de>
parents: 31
diff changeset
187 ucx_test_register(suite, test_ucx_map_iterator_chain);
44
46356d74e873 added map clone
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 42
diff changeset
188 ucx_test_register(suite, test_ucx_map_clone);
51
1c78cd19fb6b added rehashing to maps by using clone function
Mike Becker <universe@uap-core.de>
parents: 49
diff changeset
189 ucx_test_register(suite, test_ucx_map_rehash);
108
d2b1e67b2b48 new properties parser
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 103
diff changeset
190
d2b1e67b2b48 new properties parser
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 103
diff changeset
191 /* UcxPropertiesParser Tests */
110
1cf71e56f01e renamed properties functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 109
diff changeset
192 ucx_test_register(suite, test_ucx_properties_new);
1cf71e56f01e renamed properties functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 109
diff changeset
193 ucx_test_register(suite, test_ucx_properties_next);
1cf71e56f01e renamed properties functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 109
diff changeset
194 ucx_test_register(suite, test_ucx_properties_next_multi);
1cf71e56f01e renamed properties functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 109
diff changeset
195 ucx_test_register(suite, test_ucx_properties_next_part);
1cf71e56f01e renamed properties functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 109
diff changeset
196 ucx_test_register(suite, test_ucx_properties_next_long);
1cf71e56f01e renamed properties functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 109
diff changeset
197 ucx_test_register(suite, test_ucx_properties2map);
109
75cb6590358b added properties load/store functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 108
diff changeset
198 ucx_test_register(suite, test_ucx_properties_load);
75cb6590358b added properties load/store functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 108
diff changeset
199 ucx_test_register(suite, test_ucx_properties_store);
108
d2b1e67b2b48 new properties parser
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 103
diff changeset
200
d2b1e67b2b48 new properties parser
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 103
diff changeset
201 /* UcxBuffer Tests */
166
350a0e3898bd improved more buffer tests + some doc fixes
Mike Becker <universe@uap-core.de>
parents: 164
diff changeset
202 ucx_test_register(suite, test_ucx_buffer_new);
350a0e3898bd improved more buffer tests + some doc fixes
Mike Becker <universe@uap-core.de>
parents: 164
diff changeset
203 ucx_test_register(suite, test_ucx_buffer_new_prealloc);
164
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
204 ucx_test_register(suite, test_ucx_buffer_eof);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
205 ucx_test_register(suite, test_ucx_buffer_seek_set);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
206 ucx_test_register(suite, test_ucx_buffer_seek_cur);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
207 ucx_test_register(suite, test_ucx_buffer_seek_end);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
208 ucx_test_register(suite, test_ucx_buffer_seek_oob);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
209 ucx_test_register(suite, test_ucx_buffer_seek_invalid);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
210 ucx_test_register(suite, test_ucx_buffer_seek_overflow);
60
abae4669fba7 renamed UcxMemstream to UcxBuffer
Mike Becker <universe@uap-core.de>
parents: 58
diff changeset
211 ucx_test_register(suite, test_ucx_buffer_putc);
164
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
212 ucx_test_register(suite, test_ucx_buffer_putc_ae);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
213 ucx_test_register(suite, test_ucx_buffer_putc_oob);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
214 ucx_test_register(suite, test_ucx_buffer_putc_oobae);
1fa3f13f774c added allocator tests + started refactoring UcxBuffer tests (HINT: don't fix issues yet, complete tests first)
Mike Becker <universe@uap-core.de>
parents: 163
diff changeset
215 ucx_test_register(suite, test_ucx_buffer_putc_size);
60
abae4669fba7 renamed UcxMemstream to UcxBuffer
Mike Becker <universe@uap-core.de>
parents: 58
diff changeset
216 ucx_test_register(suite, test_ucx_buffer_getc);
166
350a0e3898bd improved more buffer tests + some doc fixes
Mike Becker <universe@uap-core.de>
parents: 164
diff changeset
217 ucx_test_register(suite, test_ucx_buffer_read);
350a0e3898bd improved more buffer tests + some doc fixes
Mike Becker <universe@uap-core.de>
parents: 164
diff changeset
218 ucx_test_register(suite, test_ucx_buffer_read_oob);
167
aed60ba37acf ucx_buffer_extract tests
Mike Becker <universe@uap-core.de>
parents: 166
diff changeset
219 ucx_test_register(suite, test_ucx_buffer_extract);
aed60ba37acf ucx_buffer_extract tests
Mike Becker <universe@uap-core.de>
parents: 166
diff changeset
220 ucx_test_register(suite, test_ucx_buffer_extract_oob);
aed60ba37acf ucx_buffer_extract tests
Mike Becker <universe@uap-core.de>
parents: 166
diff changeset
221 ucx_test_register(suite, test_ucx_buffer_extract_overflow);
168
24a012440dee completed buffer tests
Mike Becker <universe@uap-core.de>
parents: 167
diff changeset
222 ucx_test_register(suite, test_ucx_buffer_extend);
60
abae4669fba7 renamed UcxMemstream to UcxBuffer
Mike Becker <universe@uap-core.de>
parents: 58
diff changeset
223 ucx_test_register(suite, test_ucx_buffer_write);
168
24a012440dee completed buffer tests
Mike Becker <universe@uap-core.de>
parents: 167
diff changeset
224 ucx_test_register(suite, test_ucx_buffer_write_oob);
64
16590c9c497c added autoextend feature to buffer
Mike Becker <universe@uap-core.de>
parents: 62
diff changeset
225 ucx_test_register(suite, test_ucx_buffer_write_ax);
290
d5d6ab809ad3 adds new shift operations for UcxBuffer (including tests and a usage example in modules.md)
Mike Becker <universe@uap-core.de>
parents: 283
diff changeset
226 ucx_test_register(suite, test_ucx_buffer_shl);
d5d6ab809ad3 adds new shift operations for UcxBuffer (including tests and a usage example in modules.md)
Mike Becker <universe@uap-core.de>
parents: 283
diff changeset
227 ucx_test_register(suite, test_ucx_buffer_shr);
d5d6ab809ad3 adds new shift operations for UcxBuffer (including tests and a usage example in modules.md)
Mike Becker <universe@uap-core.de>
parents: 283
diff changeset
228 ucx_test_register(suite, test_ucx_buffer_shr_ax);
142
ee8cb27d8b8e added printf functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 140
diff changeset
229
ee8cb27d8b8e added printf functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 140
diff changeset
230 /* Utils Tests*/
ee8cb27d8b8e added printf functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 140
diff changeset
231 ucx_test_register(suite, test_ucx_fprintf);
ee8cb27d8b8e added printf functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 140
diff changeset
232 ucx_test_register(suite, test_ucx_asprintf);
223
e18884bbad48 fixes ucx_sprintf macro and adds tests for sprintf and bprintf
Mike Becker <universe@uap-core.de>
parents: 214
diff changeset
233 ucx_test_register(suite, test_ucx_sprintf);
e18884bbad48 fixes ucx_sprintf macro and adds tests for sprintf and bprintf
Mike Becker <universe@uap-core.de>
parents: 214
diff changeset
234 ucx_test_register(suite, test_ucx_bprintf);
168
24a012440dee completed buffer tests
Mike Becker <universe@uap-core.de>
parents: 167
diff changeset
235 ucx_test_register(suite, test_ucx_stream_copy);
198
b0f4fb043b47 added test for ucx_avl_put
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 192
diff changeset
236
b0f4fb043b47 added test for ucx_avl_put
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 192
diff changeset
237 /* AVL Tests */
b0f4fb043b47 added test for ucx_avl_put
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 192
diff changeset
238 ucx_test_register(suite, test_ucx_avl_put);
200
e3aad99d2d80 added ucx_avl_remove tests
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 198
diff changeset
239 ucx_test_register(suite, test_ucx_avl_remove);
243
2e74828c5e94 adds distance function and ucx_avl_find_node()
Mike Becker <universe@uap-core.de>
parents: 229
diff changeset
240 ucx_test_register(suite, test_ucx_avl_find);
245
db732f8c083a adds AVL predecessor and successor functions
Mike Becker <universe@uap-core.de>
parents: 243
diff changeset
241 ucx_test_register(suite, test_ucx_avl_traverse);
56
76caac0da4a0 added memstream to ucx - still little work to do
Mike Becker <universe@uap-core.de>
parents: 55
diff changeset
242
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
243 ucx_test_run(suite, stdout);
55
180bc6b18fec fixed map tests + used tmpfiles in tests
Mike Becker <universe@uap-core.de>
parents: 54
diff changeset
244 fflush(stdout);
252
6342cbbd1922 removes custom make files and adds autoconf support
Mike Becker <universe@uap-core.de>
parents: 251
diff changeset
245
6342cbbd1922 removes custom make files and adds autoconf support
Mike Becker <universe@uap-core.de>
parents: 251
diff changeset
246 int exit_code = suite->failure > 0 ? EXIT_FAILURE: EXIT_SUCCESS;
6342cbbd1922 removes custom make files and adds autoconf support
Mike Becker <universe@uap-core.de>
parents: 251
diff changeset
247
27
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
248 ucx_test_suite_free(suite);
22644e2572bc removed old foreach + refactored list tests
Mike Becker <universe@uap-core.de>
parents: 26
diff changeset
249
252
6342cbbd1922 removes custom make files and adds autoconf support
Mike Becker <universe@uap-core.de>
parents: 251
diff changeset
250 return exit_code;
26
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
251 } else {
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
252 ucx_test_suite_free(suite);
59f147baea31 added test framework and foreach macro
Mike Becker <universe@uap-core.de>
parents: 21
diff changeset
253 return EXIT_FAILURE;
20
db7d9860dbbd added some map functions
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 13
diff changeset
254 }
0
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
255 }
1e4522fddff0 Added makefiles
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff changeset
256

mercurial