summaryrefslogtreecommitdiff
path: root/src/test.c
diff options
context:
space:
mode:
authorbpc2003 <wpesfriendnva@gmail.com>2025-04-09 12:52:28 -0400
committerbpc2003 <wpesfriendnva@gmail.com>2025-04-09 12:52:28 -0400
commitd3b011efa05bbca15f0a7da7412f0d5634f4f962 (patch)
treeb98a78fa0540ca04fc9951b980b61203a0627efd /src/test.c
parent6eaa6e615a18422b140a7661ae5e31d48743324c (diff)
Update delkeys to handle both batch and single operations
Diffstat (limited to 'src/test.c')
-rw-r--r--src/test.c47
1 files changed, 20 insertions, 27 deletions
diff --git a/src/test.c b/src/test.c
index 0e5b448..a2a241d 100644
--- a/src/test.c
+++ b/src/test.c
@@ -11,12 +11,11 @@ void test_setkeys(void)
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) {
+ 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);
}
+ delkeys(list, -1, NULL);
free(list);
}
@@ -25,12 +24,7 @@ void test_setkeys_fail(void)
tablist_t *list = readdb("dbs/test.db");
if (!setkeys(&list, -1, "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);
- }
+ delkeys(list, -1, NULL);
free(list);
}
@@ -39,36 +33,30 @@ void test_setkeys_single(void)
tablist_t *list = readdb("dbs/test.db");
if (setkeys(&list, 101, "name:alice"))
fprintf(stderr, "test_setkeys_single: 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);
- }
+ delkeys(list, -1, NULL);
free(list);
}
void test_delkeys(void)
{
tablist_t *list = readdb("dbs/test.db");
- if (delkeys(list, "Row_1"))
+ if (delkeys(list, -1, "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) {
+ 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);
}
+ delkeys(list, -1, NULL);
free(list);
}
void test_delkeys_all(void)
{
tablist_t *list = readdb("dbs/test.db");
- if (delkeys(list, NULL))
+ if (delkeys(list, -1, NULL))
fprintf(stderr, "test_delkeys_all: failed\n");
free(list);
}
@@ -76,14 +64,18 @@ void test_delkeys_all(void)
void test_delkeys_fail(void)
{
tablist_t *list = readdb("dbs/test.db");
- if (!delkeys(list, "Row_4"))
+ if (!delkeys(list, -1, "Row_4"))
fprintf(stderr, "test_delkeys_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);
- }
+ delkeys(list, -1, NULL);
+ free(list);
+}
+
+void test_delkeys_single(void)
+{
+ tablist_t *list = readdb("dbs/test.db");
+ if (delkeys(list, 0, NULL))
+ fprintf(stderr, "test_delkeys_single: failed\n");
+ delkeys(list, -1, NULL);
free(list);
}
@@ -96,6 +88,7 @@ int main(void)
test_delkeys();
test_delkeys_all();
test_delkeys_fail();
+ test_delkeys_single();
exit(0);
}