summaryrefslogtreecommitdiff
path: root/src/test.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/test.c')
-rw-r--r--src/test.c34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/test.c b/src/test.c
index 4103c41..dd96490 100644
--- a/src/test.c
+++ b/src/test.c
@@ -9,6 +9,38 @@ void test_setkeys(void)
if (setkeys(&list, "name:john"))
fprintf(stderr, "test_setkeys: failed\n");
for (int i = 0; i < list[0].len; ++i) {
+ printf("id: %d\n", i);
+ int *indexes = getkeys(list, i);
+ for (int j = 0; indexes[j]; ++j) {
+ printf("%s\n", list[i].tab[indexes[j]].key);
+ delkey(list, i, list[i].tab[indexes[j]].key);
+ }
+ free(indexes);
+ }
+ free(list);
+}
+
+void test_setkeys_fail(void)
+{
+ tablist_t *list = readdb("dbs/test.db");
+ if (!setkeys(&list, "namejohn"))
+ fprintf(stderr, "test_setkeys_fail: failed\n");
+ for (int i = 0; i < list[0].len; ++i) {
+ int *indexes = getkeys(list, i);
+ for (int j = 0; indexes[j]; ++j)
+ delkey(list, i, list[i].tab[indexes[j]].key);
+ free(indexes);
+ }
+ free(list);
+}
+
+void test_delkeys(void)
+{
+ tablist_t *list = readdb("dbs/test.db");
+ if (delkeys(list, "Row_1"))
+ fprintf(stderr, "test_delkeys: failed\n");
+ for (int i = 0; i < list[0].len; ++i) {
+ printf("id: %d\n", i);
int *indexes = getkeys(list, i);
for (int j = 0; indexes[j]; ++j) {
printf("%s\n", list[i].tab[indexes[j]].key);
@@ -22,5 +54,7 @@ void test_setkeys(void)
int main(void)
{
test_setkeys();
+ test_setkeys_fail();
+ test_delkeys();
exit(0);
}