use _POSIX_C_SOURCE in cflags, use CLOCK_REALTIME in b and add -v flag to t
[libc-test] / src / misc / dirname.c
1 #include <stdlib.h>
2 #include <string.h>
3 #include <libgen.h>
4 #include "test.h"
5
6 static void t(char *p, char *b) {
7         char *tmp = strdup(p);
8         char *s = dirname(tmp);
9
10         if (strcmp(b,s) != 0)
11                 error("dirname(\"%s\") returned \"%s\"; expected \"%s\"\n", p, s, b);
12         free(tmp);
13 }
14
15 void test_dirname() {
16         if (strcmp(dirname(0), ".") != 0)
17                 error("dirname(0) returned \"%s\"; expected \".\"\n", dirname(0));
18         t("", ".");
19         t("/usr/lib", "/usr");
20         t("/usr/", "/");
21         t("usr", ".");
22         t("/", "/");
23         t("///", "/");
24         t(".", ".");
25         t("..", ".");
26 }