summaryrefslogtreecommitdiff
path: root/src/test.c
diff options
context:
space:
mode:
authorbpc2003 <wpesfriendnva@gmail.com>2025-04-16 15:54:36 -0400
committerbpc2003 <wpesfriendnva@gmail.com>2025-04-16 15:54:36 -0400
commit525b5b126bae74aa9817dc191beec81714701965 (patch)
treea830eab2179cb19f04bef15c63226ac77aff0f9f /src/test.c
parent44fa7d3682ff4e102bb7a228e9e5a100a050fea5 (diff)
Allow getkeys to take multiple keys as argument
Diffstat (limited to 'src/test.c')
-rw-r--r--src/test.c27
1 files changed, 21 insertions, 6 deletions
diff --git a/src/test.c b/src/test.c
index 5f2f867..76debdc 100644
--- a/src/test.c
+++ b/src/test.c
@@ -11,9 +11,9 @@ void test_setkeys(void)
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);
+ tabidx_t *indexes = getkeys(list, i, NULL, 0);
+ for (int j = 0; indexes[j].flag; ++j)
+ printf("%s\n", indexes[j].key);
free(indexes);
}
delkeys(list, -1, NULL, 0);
@@ -68,9 +68,9 @@ void test_delkeys(void)
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);
+ tabidx_t *indexes = getkeys(list, i, NULL, 0);
+ for (int j = 0; indexes[j].flag; ++j)
+ printf("%s\n", indexes[j].key);
free(indexes);
}
delkeys(list, -1, NULL, 0);
@@ -114,6 +114,20 @@ void test_delkeys_multi(void)
free(list);
}
+void test_getkeys_multi(void)
+{
+ tablist_t *list = readdb("dbs/test.db");
+ char *keys[] = { "Row_1", "Row_2" };
+ tabidx_t *ret = getkeys(list, 0, keys, 2);
+ if (ret == NULL)
+ fprintf(stderr, "test_getkeys_multi: failed\n");
+ for (int i = 0; ret[i].flag; ++i)
+ printf("%s\n", ret[i].key);
+ free(ret);
+ delkeys(list, -1, NULL, 0);
+ free(list);
+}
+
int main(void)
{
test_setkeys();
@@ -128,5 +142,6 @@ int main(void)
test_delkeys_single();
test_delkeys_multi();
+ test_getkeys_multi();
exit(0);
}