From d1a8285f818eb7e5c3d6a05709ea21a808490b8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Mon, 19 Mar 2018 19:55:58 +0100 Subject: New upstream version 5.1.0 --- app/bin/unittest/pathstest.c | 121 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100644 app/bin/unittest/pathstest.c (limited to 'app/bin/unittest/pathstest.c') diff --git a/app/bin/unittest/pathstest.c b/app/bin/unittest/pathstest.c new file mode 100644 index 0000000..b7e792e --- /dev/null +++ b/app/bin/unittest/pathstest.c @@ -0,0 +1,121 @@ +/** \file PathsTest.c +* Unit tests for the paths module +*/ + +#include +#include +#include +#include +#include +#include + +#include +#include "../paths.h" + +#ifdef WINDOWS +#define TESTPATH "C:\\Test\\Path" +#define TESTFILENAME "file.test" +#define TESTFILE TESTPATH "\\" TESTFILENAME +#define TESTPATH2 "D:\\Root" +#define TESTFILE2 TESTPATH2 "\\file2." + +#define TESTRELATIVEPATH "Test\\Path" +#define DEFAULTPATH "C:\\Default\\Path" +#else +#define TESTPATH "/Test/Path" +#define TESTFILENAME "file.test" +#define TESTFILE TESTPATH "/" TESTFILENAME +#define TESTPATH2 "/Root" +#define TESTFILE2 TESTPATH2 "/file2." + +#define TESTRELATIVEPATH "Test/Path" +#define DEFAULTPATH "/Default/Path" + +#endif //WINDOWS +void +wPrefSetString(const char *section, const char *key, const char *value) +{} + +char *wPrefGetStringExt(const char *section, const char *key) +{ + return(NULL); +} + +const char *wGetUserHomeDir(void) +{ + return(DEFAULTPATH); +} + +#include "../paths.c" + +static void SetGetPath(void **state) +{ + char *string; + (void)state; + + string = GetCurrentPath("Test"); + assert_string_equal(string, DEFAULTPATH); + + SetCurrentPath("Test", TESTFILE ); + string = GetCurrentPath("Test"); + assert_string_equal(string, TESTPATH); + + SetCurrentPath("Test", TESTFILE2); + string = GetCurrentPath("Test"); + assert_string_equal(string, TESTPATH2); +} + +static void Makepath(void **state) +{ + (void)state; + char *path; + +#ifdef WINDOWS + MakeFullpath(&path, + "C:", + TESTRELATIVEPATH, + TESTFILENAME, + NULL); + + assert_string_equal(path, "C:" TESTRELATIVEPATH "\\" TESTFILENAME); +#else + MakeFullpath(&path, + TESTRELATIVEPATH, + TESTFILENAME, + NULL); + + assert_string_equal(path, TESTRELATIVEPATH "/" TESTFILENAME); +#endif // WINDOWS + + free(path); + +#ifdef WINDOWS + MakeFullpath(&path, + "C:", + "test", + "\\subdir", + TESTFILENAME, + NULL); + assert_string_equal(path, "C:test\\subdir\\" TESTFILENAME); +#else + MakeFullpath(&path, + "test", + "/subdir", + TESTFILENAME, + NULL); + assert_string_equal(path, "test/subdir/" TESTFILENAME); + +#endif // WINDOWS + + + free(path); +} + +int main(void) +{ + const struct CMUnitTest tests[] = { + cmocka_unit_test(SetGetPath), + cmocka_unit_test(Makepath), + }; + return cmocka_run_group_tests(tests, NULL, NULL); +} -- cgit v1.2.3