X-Git-Url: https://git.ozlabs.org/?p=ccan;a=blobdiff_plain;f=ccan%2Ftal%2Fpath%2Ftest%2Frun-is_file.c;fp=ccan%2Ftal%2Fpath%2Ftest%2Frun-is_file.c;h=fc3c7d304cc92bd3c5cb53c558246d80ac70269e;hp=0000000000000000000000000000000000000000;hb=892f59bdc1830443f87ad3aaeddaab2eeefb5937;hpb=1322fd3377cc817720f7552a80d56dba447bcfea diff --git a/ccan/tal/path/test/run-is_file.c b/ccan/tal/path/test/run-is_file.c new file mode 100644 index 00000000..fc3c7d30 --- /dev/null +++ b/ccan/tal/path/test/run-is_file.c @@ -0,0 +1,42 @@ +#include +#include +#include +#include +#include +#include + +int main(void) +{ + char cwd[1024], *path, *ctx = tal_strdup(NULL, "ctx"); + + plan_tests(7); + + if (!getcwd(cwd, sizeof(cwd))) + abort(); + + unlink("run-is_file-dir-link"); + unlink("run-is_file-file-link"); + unlink("run-is_file-dir/file"); + rmdir("run-is_file-dir"); + if (mkdir("run-is_file-dir", 0700) != 0) + abort(); + if (symlink("run-is_file-dir", "run-is_file-dir-link") != 0) + abort(); + if (symlink("run-is_file-dir/file", "run-is_file-file-link") != 0) + abort(); + close(open("run-is_file-dir/file", O_WRONLY|O_CREAT, 0600)); + + ok1(!path_is_file("run-is_file-dir-link")); + ok1(path_is_file("run-is_file-file-link")); + ok1(path_is_file("run-is_file-dir/file")); + ok1(!path_is_file("run-is_file-dir")); + ok1(!path_is_file("run-is_file-nonexist")); + + path = path_join(ctx, cwd, "run-is_file-dir/file"); + ok1(path_is_file(path)); + ok1(!path_is_file(cwd)); + + tal_free(ctx); + + return exit_status(); +}