1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
#include "../test.h"
#include <vec/vec.h>
const unsigned int num_entries = 14;
char * entries[] = {
"Zero",
"First entry",
"Second entry",
"Third entry",
"Fourth entry",
"Fifth entry",
"Sixth entry",
"Seventh entry",
"8",
"9",
"entry 10",
"entry 11",
"entry 12",
"entry-last"
};
int main()
{
test_start("vec");
/* vec_append_safe */
{
vec_t * vec = vec_new(0);
_assert (vec->len == 0);
_assert (vec->size == 0);
unsigned int i;
for (i = 0; i < num_entries; i++)
{
_assert (vec_append_safe(&vec, entries[i]) == 0);
}
/* vec_copy */
{
vec_t * veccp = vec_copy(vec);
unsigned int i;
for (i = 0; i < num_entries; i++)
{
_assert (veccp->data[i] == entries[i]);
}
vec_free(veccp);
}
_assert (vec->len == num_entries);
vec_free(vec);
}
/* vec_append */
{
vec_t * vec = vec_new(num_entries);
_assert (vec->len == 0);
_assert (vec->size == num_entries);
unsigned int i;
for (i = 0; i < num_entries; i++)
{
vec_append(vec, entries[i]);
}
_assert (vec->len == num_entries);
/* vec_pop */
for (i = num_entries; i-- > 0;)
{
_assert (vec_pop(vec) == entries[i]);
}
vec_free(vec);
}
return test_end();
}
|