git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v4 8/7] wildmatch test: skip file creation tests on Windows proper

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Jan 8, 2018, 12:46 UTC
Message-ID
<nycvar.QRO.7.76.6.1801081331540.31@ZVAVAG-6OXH6DA.rhebcr.pbec.zvpebfbsg.pbz>
In-Reply-To
<87mv1raz9p.fsf@evledraar.gmail.com>
Hi Ævar,
On Sat, 6 Jan 2018, Ævar Arnfjörð Bjarmason wrote:
> Can you please provide me with the output of the test under -v -x -d
> from github.com:avar/git.git wildmatch-refactor-8 branch?
With -v -x -i:
-- snip --
[...]
expecting success:
                                printf '%s' '?a?b' >expect &&
                                git --glob-pathspecs ls-files -z -- '\??\?b' >actual.raw 2>actual.err &&
        tr -d '\0' <actual.raw >actual &&
        >expect.err &&
        test_cmp expect.err actual.err &&
        test_cmp expect actual
++ printf %s '?a?b'
++ git --glob-pathspecs ls-files -z -- '\??\?b'
+ test_eval_ret_=128
+ want_trace
+ test t = t
+ test t = t
+ set +x
error: last command exited with $?=128
not ok 734 - wildmatch(ls): match '\??\?b' '?a?b'
#
#                                       printf '%s' '?a?b' >expect &&
#                                       git --glob-pathspecs ls-files -z
#                                       -- '\??\?b' >actual.raw
#                                       2>actual.err &&
#
#               tr -d '\0' <actual.raw >actual &&
#               >expect.err &&
#               test_cmp expect.err actual.err &&
#               test_cmp expect actual
#

real 2m9.127s user 0m10.026s sys 1m0.617s -- snap --

and

-- snip -- $ cat ./trash\ directory.t3070-wildmatch/actual.err fatal: Invalid path '/??': No such file or directory -- snap --

As to the speed:

-- snip -- # still have 144 known breakage(s) # failed 28 among remaining 1746 test(s) 1..1890

real 5m55.162s user 0m26.396s sys 2m34.152s -- snap --

... seems to be in the same ballpark. You are just leaning way too heavily on Unix shell scripting.

FWIW the breakages are:

-- snip -- not ok 734 - wildmatch(ls): match '\??\?b' '?a?b' # # printf '%s' '?a?b' >expect && # git --glob-pathspecs ls-files -z # -- '\??\?b' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 735 - iwildmatch: match '?a?b' '\??\?b' not ok 736 - iwildmatch(ls): match '\??\?b' '?a?b' # # printf '%s' '?a?b' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '\??\?b' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 737 - pathmatch: match '?a?b' '\??\?b' not ok 738 - pathmatch(ls): match '\??\?b' '?a?b' # # printf '%s' '?a?b' >expect && # git ls-files -z -- '\??\?b' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 739 - ipathmatch: match '?a?b' '\??\?b' not ok 740 - ipathmatch(ls): match '\??\?b' '?a?b' # # printf '%s' '?a?b' >expect && # git --icase-pathspecs ls-files -z # -- '\??\?b' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 741 - cleanup after previous file test ok 742 - setup wildtest file test for abc ok 743 - wildmatch: match 'abc' '\a\b\c' not ok 744 - wildmatch(ls): match '\a\b\c' 'abc' # # printf '%s' 'abc' >expect && # git --glob-pathspecs ls-files -z # -- '\a\b\c' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 745 - iwildmatch: match 'abc' '\a\b\c' not ok 746 - iwildmatch(ls): match '\a\b\c' 'abc' # # printf '%s' 'abc' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '\a\b\c' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 747 - pathmatch: match 'abc' '\a\b\c' not ok 748 - pathmatch(ls): match '\a\b\c' 'abc' # # printf '%s' 'abc' >expect && # git ls-files -z -- '\a\b\c' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 749 - ipathmatch: match 'abc' '\a\b\c' not ok 750 - ipathmatch(ls): match '\a\b\c' 'abc' # # printf '%s' 'abc' >expect && # git --icase-pathspecs ls-files -z # -- '\a\b\c' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # [...] not ok 964 - wildmatch(ls): match '[\-_]' '-' # # printf '%s' '-' >expect && # git --glob-pathspecs ls-files -z # -- '[\-_]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 965 - iwildmatch: match '-' '[\-_]' not ok 966 - iwildmatch(ls): match '[\-_]' '-' # # printf '%s' '-' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '[\-_]' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 967 - pathmatch: match '-' '[\-_]' not ok 968 - pathmatch(ls): match '[\-_]' '-' # # printf '%s' '-' >expect && # git ls-files -z -- '[\-_]' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 969 - ipathmatch: match '-' '[\-_]' not ok 970 - ipathmatch(ls): match '[\-_]' '-' # # printf '%s' '-' >expect && # git --icase-pathspecs ls-files -z # -- '[\-_]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 971 - cleanup after previous file test ok 972 - setup wildtest file test for ] ok 973 - wildmatch: match ']' '[\]]' not ok 974 - wildmatch(ls): match '[\]]' ']' # # printf '%s' ']' >expect && # git --glob-pathspecs ls-files -z # -- '[\]]' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 975 - iwildmatch: match ']' '[\]]' not ok 976 - iwildmatch(ls): match '[\]]' ']' # # printf '%s' ']' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '[\]]' >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 977 - pathmatch: match ']' '[\]]' not ok 978 - pathmatch(ls): match '[\]]' ']' # # printf '%s' ']' >expect && # git ls-files -z -- '[\]]' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 979 - ipathmatch: match ']' '[\]]' not ok 980 - ipathmatch(ls): match '[\]]' ']' # # printf '%s' ']' >expect && # git --icase-pathspecs ls-files -z # -- '[\]]' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # [...] not ok 1284 - wildmatch(ls): match '[A-\\]' 'G' # # printf '%s' 'G' >expect && # git --glob-pathspecs ls-files -z # -- '[A-\\]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1285 - iwildmatch: match 'G' '[A-\\]' not ok 1286 - iwildmatch(ls): match '[A-\\]' 'G' # # printf '%s' 'G' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '[A-\\]' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1287 - pathmatch: match 'G' '[A-\\]' not ok 1288 - pathmatch(ls): match '[A-\\]' 'G' # # printf '%s' 'G' >expect && # git ls-files -z -- '[A-\\]' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1289 - ipathmatch: match 'G' '[A-\\]' not ok 1290 - ipathmatch(ls): match '[A-\\]' 'G' # # printf '%s' 'G' >expect && # git --icase-pathspecs ls-files -z # -- '[A-\\]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # [...] not ok 1374 - wildmatch(ls): match '[\1-\3]' '2' # # printf '%s' '2' >expect && # git --glob-pathspecs ls-files -z # -- '[\1-\3]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1375 - iwildmatch: match '2' '[\1-\3]' not ok 1376 - iwildmatch(ls): match '[\1-\3]' '2' # # printf '%s' '2' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '[\1-\3]' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1377 - pathmatch: match '2' '[\1-\3]' not ok 1378 - pathmatch(ls): match '[\1-\3]' '2' # # printf '%s' '2' >expect && # git ls-files -z -- '[\1-\3]' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1379 - ipathmatch: match '2' '[\1-\3]' not ok 1380 - ipathmatch(ls): match '[\1-\3]' '2' # # printf '%s' '2' >expect && # git --icase-pathspecs ls-files -z # -- '[\1-\3]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # [...] not ok 1424 - wildmatch(ls): match '[[-\]]' ']' # # printf '%s' ']' >expect && # git --glob-pathspecs ls-files -z # -- '[[-\]]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1425 - iwildmatch: match ']' '[[-\]]' not ok 1426 - iwildmatch(ls): match '[[-\]]' ']' # # printf '%s' ']' >expect && # git --glob-pathspecs # --icase-pathspecs ls-files -z -- # '[[-\]]' >actual.raw 2>actual.err # && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1427 - pathmatch: match ']' '[[-\]]' not ok 1428 - pathmatch(ls): match '[[-\]]' ']' # # printf '%s' ']' >expect && # git ls-files -z -- '[[-\]]' # >actual.raw 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # ok 1429 - ipathmatch: match ']' '[[-\]]' not ok 1430 - ipathmatch(ls): match '[[-\]]' ']' # # printf '%s' ']' >expect && # git --icase-pathspecs ls-files -z # -- '[[-\]]' >actual.raw # 2>actual.err && # # tr -d '\0' <actual.raw >actual && # >expect.err && # test_cmp expect.err actual.err && # test_cmp expect actual # -- snap --

Ciao, Dscho

Previous: Johannes SchindelinNext: Junio C Hamano
Message 43 of 73 in “increase wildmatch test coverage”
  1. 0/6 increase wildmatch test coverageÆvar Arnfjörð Bjarmason, Dec 23, 2017
  2. 2/6 wildmatch test: use more standard shell styleÆvar Arnfjörð Bjarmason, Dec 23, 2017
  3. 1/6 wildmatch test: indent with tabs, not spacesÆvar Arnfjörð Bjarmason, Dec 23, 2017
  4. 3/6 wildmatch test: use a paranoia pattern from nul_match()Ævar Arnfjörð Bjarmason, Dec 23, 2017
  5. 4/6 wildmatch test: remove dead fnmatch() test codeÆvar Arnfjörð Bjarmason, Dec 23, 2017
  6. 5/6 wildmatch test: perform all tests under all wildmatch() modesÆvar Arnfjörð Bjarmason, Dec 23, 2017
  7. 6/6 wildmatch test: create & test files on disk in addition to in-memoryÆvar Arnfjörð Bjarmason, Dec 23, 2017
  8. Johannes SixtDec 24, 2017
  9. Ævar Arnfjörð BjarmasonDec 24, 2017
  10. Johannes SixtDec 24, 2017
  11. 0/7 increase wildmatch test coverageÆvar Arnfjörð Bjarmason, Dec 25, 2017
  12. 1/7 wildmatch test: indent with tabs, not spacesÆvar Arnfjörð Bjarmason, Dec 25, 2017
  13. 2/7 wildmatch test: use more standard shell styleÆvar Arnfjörð Bjarmason, Dec 25, 2017
  14. 3/7 wildmatch test: don't try to vertically align our outputÆvar Arnfjörð Bjarmason, Dec 25, 2017
  15. 4/7 wildmatch test: use a paranoia pattern from nul_match()Ævar Arnfjörð Bjarmason, Dec 25, 2017
  16. 5/7 wildmatch test: remove dead fnmatch() test codeÆvar Arnfjörð Bjarmason, Dec 25, 2017
  17. 6/7 wildmatch test: perform all tests under all wildmatch() modesÆvar Arnfjörð Bjarmason, Dec 25, 2017
  18. Junio C HamanoDec 28, 2017
  19. 7/7 wildmatch test: create & test files on disk in addition to in-memoryÆvar Arnfjörð Bjarmason, Dec 25, 2017
  20. Johannes SixtDec 25, 2017
  21. Junio C HamanoDec 27, 2017
  22. Adam DinwoodieJan 3, 2018
  23. Ævar Arnfjörð BjarmasonJan 3, 2018
  24. Adam DinwoodieJan 3, 2018
  25. Ævar Arnfjörð BjarmasonJan 3, 2018
  26. Adam DinwoodieJan 4, 2018
  27. 0/7 increase wildmatch test coverageÆvar Arnfjörð Bjarmason, Jan 4, 2018
  28. 1/7 wildmatch test: indent with tabs, not spacesÆvar Arnfjörð Bjarmason, Jan 4, 2018
  29. 2/7 wildmatch test: use more standard shell styleÆvar Arnfjörð Bjarmason, Jan 4, 2018
  30. 3/7 wildmatch test: don't try to vertically align our outputÆvar Arnfjörð Bjarmason, Jan 4, 2018
  31. 4/7 wildmatch test: use a paranoia pattern from nul_match()Ævar Arnfjörð Bjarmason, Jan 4, 2018
  32. 5/7 wildmatch test: remove dead fnmatch() test codeÆvar Arnfjörð Bjarmason, Jan 4, 2018
  33. 6/7 wildmatch test: perform all tests under all wildmatch() modesÆvar Arnfjörð Bjarmason, Jan 4, 2018
  34. 7/7 wildmatch test: create & test files on disk in addition to in-memoryÆvar Arnfjörð Bjarmason, Jan 4, 2018
  35. Johannes SchindelinJan 5, 2018
  36. Ævar Arnfjörð BjarmasonJan 5, 2018
  37. Johannes SchindelinJan 5, 2018
  38. 8/7 wildmatch test: skip file creation tests on Windows properÆvar Arnfjörð Bjarmason, Jan 5, 2018
  39. Junio C HamanoJan 5, 2018
  40. Johannes SchindelinJan 6, 2018
  41. Ævar Arnfjörð BjarmasonJan 6, 2018
  42. Johannes SchindelinJan 6, 2018
  43. Johannes SchindelinJan 8, 2018
  44. Junio C HamanoJan 8, 2018
  45. Duy NguyenJan 7, 2018
  46. Johannes SchindelinJan 8, 2018
  47. Duy NguyenJan 10, 2018
  48. Adam DinwoodieJan 10, 2018
  49. Duy NguyenJan 10, 2018
  50. Johannes SchindelinJan 10, 2018
  51. Duy NguyenJan 11, 2018
  52. 00/10 increase wildmatch test coverageÆvar Arnfjörð Bjarmason, Jan 30, 2018
  53. 01/10 wildmatch test: indent with tabs, not spacesÆvar Arnfjörð Bjarmason, Jan 30, 2018
  54. 02/10 wildmatch test: use more standard shell styleÆvar Arnfjörð Bjarmason, Jan 30, 2018
  55. 03/10 wildmatch test: don't try to vertically align our outputÆvar Arnfjörð Bjarmason, Jan 30, 2018
  56. 04/10 wildmatch test: use a paranoia pattern from nul_match()Ævar Arnfjörð Bjarmason, Jan 30, 2018
  57. 06/10 wildmatch test: use test_must_fail, not ! for test-wildmatchÆvar Arnfjörð Bjarmason, Jan 30, 2018
  58. 05/10 wildmatch test: remove dead fnmatch() test codeÆvar Arnfjörð Bjarmason, Jan 30, 2018
  59. 07/10 wildmatch test: perform all tests under all wildmatch() modesÆvar Arnfjörð Bjarmason, Jan 30, 2018
  60. 09/10 test-lib: add an EXPENSIVE_ON_WINDOWS prerequisiteÆvar Arnfjörð Bjarmason, Jan 30, 2018
  61. 10/10 wildmatch test: mark test as EXPENSIVE_ON_WINDOWSÆvar Arnfjörð Bjarmason, Jan 30, 2018
  62. 08/10 wildmatch test: create & test files on disk in addition to in-memoryÆvar Arnfjörð Bjarmason, Jan 30, 2018
  63. Junio C HamanoDec 28, 2017
  64. Ævar Arnfjörð BjarmasonDec 28, 2017
  65. 0/7 increase wildmatch test coverageÆvar Arnfjörð Bjarmason, Dec 28, 2017
  66. 1/7 wildmatch test: indent with tabs, not spacesÆvar Arnfjörð Bjarmason, Dec 28, 2017
  67. 3/7 wildmatch test: don't try to vertically align our outputÆvar Arnfjörð Bjarmason, Dec 28, 2017
  68. 2/7 wildmatch test: use more standard shell styleÆvar Arnfjörð Bjarmason, Dec 28, 2017
  69. 6/7 wildmatch test: perform all tests under all wildmatch() modesÆvar Arnfjörð Bjarmason, Dec 28, 2017
  70. 4/7 wildmatch test: use a paranoia pattern from nul_match()Ævar Arnfjörð Bjarmason, Dec 28, 2017
  71. 5/7 wildmatch test: remove dead fnmatch() test codeÆvar Arnfjörð Bjarmason, Dec 28, 2017
  72. 7/7 wildmatch test: create & test files on disk in addition to in-memoryÆvar Arnfjörð Bjarmason, Dec 28, 2017
  73. Ævar Arnfjörð BjarmasonDec 29, 2017

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.