Re: [PATCH v4 00/12] Wildmatch v4

3 messages, 3 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH v4 00/12] Wildmatch v4

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:55:00

Torsten Bögershausen [off-list ref] writes:
On 11.10.12 13:56, Nguyen Thai Ngoc Duy wrote:
quoted
On Thu, Oct 11, 2012 at 11:33 AM, Junio C Hamano [off-list ref] wrote:
quoted
Junio C Hamano [off-list ref] writes:
quoted
Nguyễn Thái Ngọc Duy  [off-list ref] writes:
quoted
Really small updates. I did not want to resend it this soon but this
may fix the compile errors for Junio.
t3070 seems to break TAP,

    *** prove ***
    t3070-wildmatch.sh .. Failed 1/151 subtests

    Test Summary Report
    -------------------
    t3070-wildmatch.sh (Wstat: 0 Tests: 150 Failed: 0)
      Parse errors: Tests out of sequence.  Found (76) but expected (75)
                    Tests out of sequence.  Found (77) but expected (76)
                    Tests out of sequence.  Found (78) but expected (77)
                    Tests out of sequence.  Found (79) but expected (78)
                    Tests out of sequence.  Found (80) but expected (79)
    Displayed the first 5 of 77 TAP syntax errors.

This probably is due to this part of the output:

    ok 72 - wildmatch 1 1 [ab] [\[:]ab]
    ok 73 - wildmatch 1 1 ?a?b \??\?b
    ok 74 - wildmatch 1 1 abc ^G^Hok 75 - wildmatch 0 0 foo
    ok 76 - wildmatch 1 0 foo/bar/baz/to **/t[o]
    ok 77 - wildmatch 1 1 a1B [[:alpha:]][[:digit:]][[:upper:]]
It seems to prove fine here with perl 5.12.3, Test-Harness-3.230,
bash-4.0_p38. What version do you use?
Some problems even here (Mac OS) commit 2aeb6d4d7884f4c4425

not ok 61 - wildmatch 0 0 \ \
not ok 62 - wildmatch 0 0 /\ */\
not ok 69 - wildmatch 1 1 [ab] [[:]ab]
not ok 71 - wildmatch 1 1 [ab] [[:digit]ab]
not ok 80 - wildmatch 1 0 1 [[:digit:][:upper:][:space:]]
not ok 81 - wildmatch 0 0 1 [[:digit:][:upper:][:spaci:]]
not ok 88 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]]
not ok 89 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]]
not ok 93 - wildmatch 1 1 y [a-c[:digit:]x-z]

I have 2 perls,...
The problem under discussion was that the output from passing tests
were mangled and not interpreted correctly by a program that
analyzes them, which happens to be written in Perl.  Even in that
context, it was pointless to ask for Perl versions, as it was clear
that the input to that Perl-written program, i.e. output from the
tests, were not formatted correctly to say "ok NN message".

If you are getting "not ok", I do not think you need to look at your
Perl.  The wildmatch tests are failing, and it is far more likely
that the wildmatch code is failing in your environment, than the
test harness that runs wildmatch code is failing.

Neither the wildmatch code itself (in C), nor the test harness that
is giving you the above "not ok" (in shell) depends on Perl.

Thanks for a report, but the debugging needs to see how the matching
code in mildmatch misbehaves.

I suspect it is another case where the platform fnmatch (from MacOS)
is not behaving as these tests expect.

Nguyen, how about updating the match () shell function in 3070 so
that it not just says not-ok, but indicates what failed (wildmatch
failed, or wildmatch passed but fnmatch failed), at least when the
test is run as "./t3070-*.sh -v -i"?

Re: [PATCH v4 00/12] Wildmatch v4

From: Torsten Bögershausen <hidden>
Date: 2016-06-15 22:55:00

On 10/12/2012 07:05 PM, Junio C Hamano wrote:
quoted
Some problems even here (Mac OS) commit 2aeb6d4d7884f4c4425

not ok 61 - wildmatch 0 0 \ \
not ok 62 - wildmatch 0 0 /\ */\
not ok 69 - wildmatch 1 1 [ab] [[:]ab]
not ok 71 - wildmatch 1 1 [ab] [[:digit]ab]
not ok 80 - wildmatch 1 0 1 [[:digit:][:upper:][:space:]]
not ok 81 - wildmatch 0 0 1 [[:digit:][:upper:][:spaci:]]
not ok 88 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]]
not ok 89 - wildmatch 1 0 _ [[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:graph:][:lower:][:print:][:punct:][:space:][:upper:][:xdigit:]]
not ok 93 - wildmatch 1 1 y [a-c[:digit:]x-z]
Nguyen, how about updating the match () shell function in 3070 so
that it not just says not-ok, but indicates what failed (wildmatch
failed, or wildmatch passed but fnmatch failed), at least when the
test is run as "./t3070-*.sh -v -i"?
It seams to be the fnmatch, since removing the
fnmatch makes t3070 pass.

However, pullling in compat/fnmatch in the Makefile

  ifeq ($(uname_S),Darwin)
+       NO_FNMATCH = YesPlease

================
gives this result:
  ./t3070-wildmatch.sh 2>&1 | grep "not ok"
not ok 23 - wildmatch 1 1 a]b a[]]b
not ok 25 - wildmatch 1 1 a]b a[]-]b
not ok 43 - wildmatch 1 1 /foo **/foo
not ok 79 - wildmatch 1 1 A [[:digit:][:upper:][:space:]]
not ok 84 - wildmatch 1 1 . [[:digit:][:punct:][:space:]]
not ok 85 - wildmatch 1 1 5 [[:xdigit:]]
not ok 86 - wildmatch 1 1 f [[:xdigit:]]
not ok 87 - wildmatch 1 1 D [[:xdigit:]]
not ok 90 - wildmatch 1 1 . 
[^[:alnum:][:alpha:][:blank:][:cntrl:][:digit:][:lower:][:space:][:upper:][:xdigit:]]
not ok 92 - wildmatch 1 1 b [a-c[:digit:]x-z]
not ok 95 - wildmatch 1 1 ] [\\-^]
not ok 98 - wildmatch 1 1 ] [\]]

(Confused)

Re: [PATCH v4 00/12] Wildmatch v4

From: Nguyen Thai Ngoc Duy <hidden>
Date: 2016-06-15 22:55:00

On Fri, Oct 12, 2012 at 10:05:06AM -0700, Junio C Hamano wrote:
Nguyen, how about updating the match () shell function in 3070 so
that it not just says not-ok, but indicates what failed (wildmatch
failed, or wildmatch passed but fnmatch failed), at least when the
test is run as "./t3070-*.sh -v -i"?
You could squash this to the "Integrate wildmatch to git" patch, or
just put it at the end of the series (I'll need to send a series
update anyway). This splits fnmatch and wildmatch tests separately so
we can easily identify which one fails.

-- 8< --
diff --git a/t/t3070-wildmatch.sh b/t/t3070-wildmatch.sh
index c3ee729..4f97923 100755
--- a/t/t3070-wildmatch.sh
+++ b/t/t3070-wildmatch.sh
@@ -5,20 +5,28 @@ test_description='wildmatch tests'
 . ./test-lib.sh
 
 match() {
-    test_expect_success "wildmatch $*" "
-	if [ $1 = 1 ]; then
+    if [ $1 = 1 ]; then
+	test_expect_success "wildmatch:    match $3 $4" "
 	    test-wildmatch wildmatch '$3' '$4'
-	else
+	"
+    else
+	test_expect_success "wildmatch: no match $3 $4" "
 	    ! test-wildmatch wildmatch '$3' '$4'
-	fi &&
-	if [ $2 = 1 ]; then
+	"
+    fi
+    if [ $2 = 1 ]; then
+	test_expect_success "fnmatch:      match $3 $4" "
 	    test-wildmatch fnmatch '$3' '$4'
-	elif [ $2 = x ]; then
-	    true
-	else
+	"
+    elif [ $2 = 0 ]; then
+	test_expect_success "fnmatch:   no match $3 $4" "
 	    ! test-wildmatch fnmatch '$3' '$4'
-	fi
-    "
+	"
+#    else
+#	test_expect_success BROKEN_FNMATCH "fnmatch:       $3 $4" "
+#	    test-wildmatch fnmatch '$3' '$4'
+#	"
+    fi
 }
 
 # Basic wildmat features
-- 8< --
-- 
Duy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help