1 /* Martin Asser Hansen (mail@maasha.dk) Copyright (C) 2008 - All right reserved */
6 static void test_barray_new();
7 static void test_barray_new_size();
8 static void test_barray_resize();
9 static void test_barray_print();
10 static void test_barray_interval_inc();
11 static void test_barray_interval_scan();
12 static void test_barray_interval_max();
13 static void test_barray_destroy();
18 fprintf( stderr, "Running all tests for barray.c\n" );
21 test_barray_new_size();
24 test_barray_interval_inc();
25 test_barray_interval_scan();
26 test_barray_interval_max();
27 test_barray_destroy();
29 fprintf( stderr, "Done\n\n" );
35 void test_barray_new()
37 fprintf( stderr, " Testing barray_new ... " );
42 ba = barray_new( nmemb );
43 // barray_print( ba );
45 fprintf( stderr, "OK\n" );
49 void test_barray_new_size()
51 fprintf( stderr, " Testing barray_new_size ... " );
53 size_t nmemb_old = 1100000;
56 nmemb_new = barray_new_size( nmemb_old );
58 // printf( "old: %zu new: %zu\n", nmemb_old, nmemb_new );
60 fprintf( stderr, "OK\n" );
64 void test_barray_resize()
66 fprintf( stderr, " Testing barray_resize ... " );
68 size_t nmemb_old = 10;
69 size_t nmemb_new = 20;
72 ba = barray_new( nmemb_old );
74 barray_resize( ba, nmemb_new );
76 // barray_print( ba );
78 fprintf( stderr, "OK\n" );
82 void test_barray_print()
84 fprintf( stderr, " Testing barray_print ... " );
89 ba = barray_new( nmemb );
91 // barray_print( ba );
93 fprintf( stderr, "OK\n" );
97 void test_barray_interval_inc()
99 fprintf( stderr, " Testing barray_interval_inc ... " );
104 ba = barray_new( nmemb );
106 barray_interval_inc( ba, 0, 0, 3 );
107 barray_interval_inc( ba, 0, 3, 3 );
108 barray_interval_inc( ba, 9, 9, 3 );
110 // barray_print( ba );
112 fprintf( stderr, "OK\n" );
116 void test_barray_interval_scan()
118 fprintf( stderr, " Testing barray_interval_scan ... " );
126 ba = barray_new( nmemb );
129 barray_interval_inc( ba, 1, 2, 1 );
130 barray_interval_inc( ba, 4, 5, 1 );
132 barray_interval_inc( ba, 0, 0, 3 );
133 barray_interval_inc( ba, 0, 3, 3 );
134 barray_interval_inc( ba, 9, 9, 3 );
135 barray_interval_inc( ba, 11, 11, 3 );
136 barray_interval_inc( ba, 19, 29, 3 );
137 barray_interval_inc( ba, 25, 35, 2 );
140 // barray_print( ba );
142 while ( barray_interval_scan( ba, &pos, &beg, &end ) ) {
143 // printf( "beg: %zu end: %zu\n", beg, end );
146 fprintf( stderr, "OK\n" );
150 void test_barray_interval_max()
152 fprintf( stderr, " Testing barray_interval_max ... " );
161 ba = barray_new( nmemb );
163 barray_interval_inc( ba, 1, 2, 1 );
164 barray_interval_inc( ba, 4, 5, 1 );
165 barray_interval_inc( ba, 0, 0, 3 );
166 barray_interval_inc( ba, 0, 3, 3 );
167 barray_interval_inc( ba, 9, 9, 3 );
168 barray_interval_inc( ba, 11, 11, 3 );
169 barray_interval_inc( ba, 19, 29, 3 );
170 barray_interval_inc( ba, 25, 35, 2 );
171 barray_interval_inc( ba, 35, 35, 10 );
173 while ( barray_interval_scan( ba, &pos, &beg, &end ) )
175 max = barray_interval_max( ba, beg, end );
177 // printf( "beg: %zu end: %zu max: %hd\n", beg, end, max );
180 // barray_print( ba );
182 fprintf( stderr, "OK\n" );
186 void test_barray_destroy()
188 fprintf( stderr, " Testing barray_destroy ... " );
193 ba = barray_new( nmemb );
195 barray_destroy( &ba );
197 assert( ba == NULL );
199 fprintf( stderr, "OK\n" );