Added flags to treeset and quickfix to treemap unit test

This commit is contained in:
Leonardo committed 2020-03-16 19:53:02 -03:00
1 parent 2391729541
commit 9999275ad0
3 files changed
+157 -21

No files matched your search

+1
View File
@@ -137,5 +137,6 @@ CMC_CREATE_UNIT(treemap_test, true, {
cmc_assert_equals(int32_t, cmc_flags.OK, tm_flag(map2));
tm_free(map);
tm_free(map2);
});
});
+61
View File
@@ -41,4 +41,65 @@ CMC_CREATE_UNIT(treeset_test, true, {
ts_free(set);
});
CMC_CREATE_TEST(flags, {
struct treeset *set = ts_new(ts_ftab_val);
cmc_assert_not_equals(ptr, NULL, set);
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
// clear
set->flag = cmc_flags.ERROR;
ts_clear(set);
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
// insert
set->flag = cmc_flags.ERROR;
cmc_assert(ts_insert(set, 1));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
// remove
cmc_assert(!ts_remove(set, 2));
cmc_assert_equals(int32_t, cmc_flags.NOT_FOUND, ts_flag(set));
cmc_assert(ts_remove(set, 1));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
cmc_assert(!ts_remove(set, 1));
cmc_assert_equals(int32_t, cmc_flags.EMPTY, ts_flag(set));
// max min
set->flag = cmc_flags.ERROR;
cmc_assert(!ts_max(set, NULL));
cmc_assert_equals(int32_t, cmc_flags.EMPTY, ts_flag(set));
set->flag = cmc_flags.ERROR;
cmc_assert(!ts_min(set, NULL));
cmc_assert_equals(int32_t, cmc_flags.EMPTY, ts_flag(set));
cmc_assert(ts_insert(set, 1));
set->flag = cmc_flags.ERROR;
cmc_assert(ts_max(set, NULL));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
set->flag = cmc_flags.ERROR;
cmc_assert(ts_min(set, NULL));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
// copy_of
set->flag = cmc_flags.ERROR;
struct treeset *set2 = ts_copy_of(set);
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set2));
// equals
set->flag = cmc_flags.ERROR;
set2->flag = cmc_flags.ERROR;
cmc_assert(ts_equals(set, set2));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set));
cmc_assert_equals(int32_t, cmc_flags.OK, ts_flag(set2));
ts_free(set);
ts_free(set2);
});
});