Am 9/4/2012 10:14, schrieb mhag...@alum.mit.edu:
> From: Michael Haggerty <mhag...@alum.mit.edu>
> These tests already pass, but make sure they don't break in the
> Signed-off-by: Michael Haggerty <mhag...@alum.mit.edu>
> It would be great if somebody would check whether these tests pass on
> Windows, and if not, give me a tip about how to fix them.
> t/t0000-basic.sh | 11 +++++++++++
> 1 file changed, 11 insertions(+)
> diff --git a/t/t0000-basic.sh b/t/t0000-basic.sh
> index d929578..3c75e97 100755
> --- a/t/t0000-basic.sh
> +++ b/t/t0000-basic.sh
> @@ -468,6 +468,17 @@ test_expect_success 'real path works on absolute paths' '
> test "$d/$nopath" = "$(test-path-utils real_path "$d/$nopath")"
> +test_expect_success 'real path removes extra slashes' '
> + nopath="hopefully-absent-path" &&
> + test "/" = "$(test-path-utils real_path "///")" &&
> + test "/$nopath" = "$(test-path-utils real_path "///$nopath")" &&
Same here: test-path-utils operates on a DOS-style absolute path.
Furthermore, as Junio pointed out elsewhere, it is desirable that slashes
(dir-separators) at the beginning are not collapsed if there are exactly
two of them. Three or more can be collapsed to a single slash.
> + # We need an existing top-level directory to use in the
> + # remaining tests. Use the top-level ancestor of $(pwd):
> + d=$(pwd -P | sed -e "s|^\(/[^/]*\)/.*|\1|") &&
Same here: Account for the drive letter-colon.
> + test "$d" = "$(test-path-utils real_path "//$d///")" &&
> + test "$d/$nopath" = "$(test-path-utils real_path "//$d///$nopath")"
Since $d is a DOS-style path on Windows, //$d means something entirely
different than $d. You should split the test in two: One test checks that
slashes at the end or before $nopath are collapsed (this must work on
Windows as well), and another test protected by POSIX prerequisite to
check that slashes at the beginning are collapsed.
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html