summaryrefslogtreecommitdiff
path: root/project-base/tests/test_settings_config.c
diff options
context:
space:
mode:
Diffstat (limited to 'project-base/tests/test_settings_config.c')
-rw-r--r--project-base/tests/test_settings_config.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/project-base/tests/test_settings_config.c b/project-base/tests/test_settings_config.c
new file mode 100644
index 0000000..b24e864
--- /dev/null
+++ b/project-base/tests/test_settings_config.c
@@ -0,0 +1,36 @@
+s32 test_settings_config_write(int argc, char** argv) {
+ platform_init(argc, argv, CONFIG_DIRECTORY);
+
+ settings_set_number("number1", 1);
+ settings_set_number("number2", 2);
+ settings_set_string("string1", "String 123");
+ settings_set_string("string2", "321 String");
+
+ settings_write_to_file();
+
+ error_if(_settings_file.settings.length != 4);
+
+ platform_destroy();
+ success;
+}
+
+s32 test_settings_config_read(int argc, char** argv) {
+ platform_init(argc, argv, CONFIG_DIRECTORY);
+
+ int num1 = settings_get_number("number1");
+ int num2 = settings_get_number("number2");
+
+ char* string1 = settings_get_string("string1");
+ char* string2 = settings_get_string("string2");
+
+ int def = settings_get_number_or_default("wrong", 15);
+
+ error_if(num1 != 1);
+ error_if(num2 != 2);
+ error_if(!string_equals(string1, "String 123"));
+ error_if(!string_equals(string2, "321 String"));
+ error_if(def != 15);
+
+ platform_destroy();
+ success;
+} \ No newline at end of file