summaryrefslogtreecommitdiff
path: root/src/test.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/test.c')
-rw-r--r--src/test.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/src/test.c b/src/test.c
index 5a4976e..0e5b448 100644
--- a/src/test.c
+++ b/src/test.c
@@ -6,7 +6,7 @@
void test_setkeys(void)
{
tablist_t *list = readdb("dbs/test.db");
- if (setkeys(list, "name:john"))
+ if (setkeys(&list, -1, "name:john"))
fprintf(stderr, "test_setkeys: failed\n");
for (int i = 0; i < list[0].len; ++i) {
printf("id: %d\n", i);
@@ -23,7 +23,7 @@ void test_setkeys(void)
void test_setkeys_fail(void)
{
tablist_t *list = readdb("dbs/test.db");
- if (!setkeys(list, "namejohn"))
+ 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);
@@ -34,6 +34,20 @@ void test_setkeys_fail(void)
free(list);
}
+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);
+ }
+ free(list);
+}
+
void test_delkeys(void)
{
tablist_t *list = readdb("dbs/test.db");
@@ -77,6 +91,7 @@ int main(void)
{
test_setkeys();
test_setkeys_fail();
+ test_setkeys_single();
test_delkeys();
test_delkeys_all();