diff options
author | Jiang Xin <worldhello.net@gmail.com> | 2013-06-25 23:53:57 +0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-06-26 11:25:12 -0700 |
commit | abd4284bc62127a2db69c8c81501a56bb29284c8 (patch) | |
tree | 1c21a7699b9267454c944f1c6fedca0c25d4a0d8 /test-path-utils.c | |
parent | test: add t7301 for git-clean--interactive (diff) | |
download | tgif-abd4284bc62127a2db69c8c81501a56bb29284c8.tar.xz |
test: run testcases with POSIX absolute paths on Windows
Some test cases are skipped on Windows by marking with POSIX prereq.
This is because arguments look like absolute paths (such as /a/b)
for regular Windows programs (*.exe executables, no bash scripts)
are changed to Windows paths (like C:/msysgit/a/b).
There is no cygpath nor equivalent on msysGit, but it is easy to
write one. New subcommand "mingw_path" is added in test-path-utils,
so that we can get the expected absolute paths on Windows. E.g.
COMMAND LINE Linux output Windows output
================================== ============ ===============
test-path-utils mingw_path / / C:/msysgit
test-path-utils mingw_path /a/b/ /a/b/ C:/msysgit/a/b/
With this utility, most skipped test cases in t0060 can be turned on
to be tested correctly on Windows.
Signed-off-by: Jiang Xin <worldhello.net@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'test-path-utils.c')
-rw-r--r-- | test-path-utils.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/test-path-utils.c b/test-path-utils.c index 1bf4730619..bb975e4d3e 100644 --- a/test-path-utils.c +++ b/test-path-utils.c @@ -116,6 +116,11 @@ int main(int argc, char **argv) return 0; } + if (argc == 3 && !strcmp(argv[1], "mingw_path")) { + puts(argv[2]); + return 0; + } + if (argc == 4 && !strcmp(argv[1], "relative_path")) { struct strbuf sb = STRBUF_INIT; const char *in, *prefix, *rel; |