t0060: move tests of real_path() from t0000 to here
[gitweb.git] / t / t0060-path-utils.sh
index 53cf1f8dc4acad959fdec359b738387aeb126b1e..c8db144c330452ca37fa94db41c5248c7ce4fedb 100755 (executable)
@@ -139,4 +139,23 @@ test_expect_success 'strip_path_suffix' '
        test c:/msysgit = $(test-path-utils strip_path_suffix \
                c:/msysgit/libexec//git-core libexec/git-core)
 '
+
+test_expect_success SYMLINKS 'real path works as expected' '
+       mkdir first &&
+       ln -s ../.git first/.git &&
+       mkdir second &&
+       ln -s ../first second/other &&
+       mkdir third &&
+       dir="$(cd .git; pwd -P)" &&
+       dir2=third/../second/other/.git &&
+       test "$dir" = "$(test-path-utils real_path $dir2)" &&
+       file="$dir"/index &&
+       test "$file" = "$(test-path-utils real_path $dir2/index)" &&
+       basename=blub &&
+       test "$dir/$basename" = "$(cd .git && test-path-utils real_path "$basename")" &&
+       ln -s ../first/file .git/syml &&
+       sym="$(cd first; pwd -P)"/file &&
+       test "$sym" = "$(test-path-utils real_path "$dir2/syml")"
+'
+
 test_done