mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-30 23:53:32 +01:00
Improve get_parent_directory unit tests
* Add more test cases to the get_parent_directory tests * Switch the parameter order so that the expected value is the first one
This commit is contained in:
parent
275b81ec5d
commit
22a915bcd2
@ -1652,24 +1652,40 @@ test_util_parent_dir(void *ptr)
|
|||||||
char *cp;
|
char *cp;
|
||||||
(void)ptr;
|
(void)ptr;
|
||||||
|
|
||||||
#define T(input,expect_ok,output) \
|
#define T(output,expect_ok,input) \
|
||||||
do { \
|
do { \
|
||||||
int ok; \
|
int ok; \
|
||||||
cp = tor_strdup(input); \
|
cp = tor_strdup(input); \
|
||||||
ok = get_parent_directory(cp); \
|
ok = get_parent_directory(cp); \
|
||||||
tt_int_op(ok, ==, expect_ok); \
|
tt_int_op(expect_ok, ==, ok); \
|
||||||
if (ok==0) \
|
if (ok==0) \
|
||||||
tt_str_op(cp, ==, output); \
|
tt_str_op(output, ==, cp); \
|
||||||
tor_free(cp); \
|
tor_free(cp); \
|
||||||
} while (0);
|
} while (0);
|
||||||
|
|
||||||
T("/home/wombat/knish", 0, "/home/wombat");
|
T("/home/wombat", 0, "/home/wombat/knish");
|
||||||
T("/home/wombat/knish/", 0, "/home/wombat");
|
T("/home/wombat", 0, "/home/wombat/knish/");
|
||||||
T("./home/wombat/knish/", 0, "./home/wombat");
|
T("/home/wombat", 0, "/home/wombat/knish///");
|
||||||
T("./wombat", 0, ".");
|
T("./home/wombat", 0, "./home/wombat/knish/");
|
||||||
|
T(".", 0, "./wombat");
|
||||||
|
T(".", 0, "./wombat/");
|
||||||
|
T(".", 0, "./wombat//");
|
||||||
|
T("wombat", 0, "wombat/foo");
|
||||||
|
T("wombat/..", 0, "wombat/../foo");
|
||||||
|
T("wombat/../", 0, "wombat/..//foo"); /* Is this correct? */
|
||||||
|
T("wombat", 0, "wombat/..//");
|
||||||
|
T("wombat", 0, "wombat/foo/");
|
||||||
|
T("wombat", 0, "wombat/.foo");
|
||||||
|
T("wombat", 0, "wombat/.foo/");
|
||||||
|
|
||||||
T("", -1, "");
|
T("", -1, "");
|
||||||
T("/", -1, "");
|
T("", -1, ".");
|
||||||
T("////", -1, "");
|
T("", -1, "..");
|
||||||
|
T("", -1, "../");
|
||||||
|
T("", -1, "/");
|
||||||
|
T("", -1, "////");
|
||||||
|
T("", -1, "wombat");
|
||||||
|
T("", -1, "wombat/");
|
||||||
|
|
||||||
done:
|
done:
|
||||||
tor_free(cp);
|
tor_free(cp);
|
||||||
|
Loading…
Reference in New Issue
Block a user