aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2025-07-07 17:40:51 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2025-07-07 17:40:51 -0400
commitd0815e2b02b4f110fa140dd124cc0f5f236be05a (patch)
tree6e3eede5222dc0bb9fe4387694851ef1599b5a2f
parentb02d868a4f74194f910f8ce173cb5586bc62a31a (diff)
downloadstasis-d0815e2b02b4f110fa140dd124cc0f5f236be05a.tar.gz
Test for ini_getall()
-rw-r--r--tests/test_ini.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/test_ini.c b/tests/test_ini.c
index e4a7808..af47ddf 100644
--- a/tests/test_ini.c
+++ b/tests/test_ini.c
@@ -195,6 +195,23 @@ void test_ini_getval_wrappers() {
ini_free(&ini);
}
+void test_ini_getall() {
+ const char *filename = "ini_open.ini";
+ struct INIFILE *ini = NULL;
+ const char *data = "[default]\nhello=world!\nthis=is a test\nx=1\ny=0\n";
+
+ stasis_testing_write_ascii(filename, data);
+ ini = ini_open(filename);
+ STASIS_ASSERT_FATAL(ini != NULL, "failed to open ini file");
+
+ const struct INIData *d = NULL;
+ for (size_t i = 0; (d = ini_getall(ini, "default")) != NULL; i++) {
+ STASIS_ASSERT(d->key != NULL, "INIData key should not be NULL");
+ STASIS_ASSERT(d->value != NULL, "INIData key should not be NULL");
+ }
+ ini_free(&ini);
+}
+
int main(int argc, char *argv[]) {
STASIS_TEST_BEGIN_MAIN();
STASIS_TEST_FUNC *tests[] = {
@@ -204,6 +221,7 @@ int main(int argc, char *argv[]) {
test_ini_has_key,
test_ini_setval_getval,
test_ini_getval_wrappers,
+ test_ini_getall,
};
STASIS_TEST_RUN(tests);
STASIS_TEST_END_MAIN();