Merge branch 'jk/mergetool-lib-refactor'
[gitweb.git] / t / t3070-wildmatch.sh
index 4c37057ddf4a6796c88dba45f0123da1a44fb4af..38446a0e872e90fb008d6d42784a1892bab214e9 100755 (executable)
@@ -6,20 +6,20 @@ test_description='wildmatch tests'
 
 match() {
     if [ $1 = 1 ]; then
-       test_expect_success "wildmatch:    match '$3' '$4'" "
+       test_expect_success "wildmatch:     match '$3' '$4'" "
            test-wildmatch wildmatch '$3' '$4'
        "
     else
-       test_expect_success "wildmatch: no match '$3' '$4'" "
+       test_expect_success "wildmatch:  no match '$3' '$4'" "
            ! test-wildmatch wildmatch '$3' '$4'
        "
     fi
     if [ $2 = 1 ]; then
-       test_expect_success "fnmatch:      match '$3' '$4'" "
+       test_expect_success "fnmatch:       match '$3' '$4'" "
            test-wildmatch fnmatch '$3' '$4'
        "
     elif [ $2 = 0 ]; then
-       test_expect_success "fnmatch:   no match '$3' '$4'" "
+       test_expect_success "fnmatch:    no match '$3' '$4'" "
            ! test-wildmatch fnmatch '$3' '$4'
        "
 #    else
@@ -29,13 +29,25 @@ match() {
     fi
 }
 
+imatch() {
+    if [ $1 = 1 ]; then
+       test_expect_success "iwildmatch:    match '$2' '$3'" "
+           test-wildmatch iwildmatch '$2' '$3'
+       "
+    else
+       test_expect_success "iwildmatch: no match '$2' '$3'" "
+           ! test-wildmatch iwildmatch '$2' '$3'
+       "
+    fi
+}
+
 pathmatch() {
     if [ $1 = 1 ]; then
-       test_expect_success "pathmatch:    match '$2' '$3'" "
+       test_expect_success "pathmatch:     match '$2' '$3'" "
            test-wildmatch pathmatch '$2' '$3'
        "
     else
-       test_expect_success "pathmatch: no match '$2' '$3'" "
+       test_expect_success "pathmatch:  no match '$2' '$3'" "
            ! test-wildmatch pathmatch '$2' '$3'
        "
     fi
@@ -235,4 +247,35 @@ pathmatch 1 abcXdefXghi '*X*i'
 pathmatch 1 ab/cXd/efXg/hi '*/*X*/*/*i'
 pathmatch 1 ab/cXd/efXg/hi '*Xg*i'
 
+# Case-sensitivy features
+match 0 x 'a' '[A-Z]'
+match 1 x 'A' '[A-Z]'
+match 0 x 'A' '[a-z]'
+match 1 x 'a' '[a-z]'
+match 0 x 'a' '[[:upper:]]'
+match 1 x 'A' '[[:upper:]]'
+match 0 x 'A' '[[:lower:]]'
+match 1 x 'a' '[[:lower:]]'
+match 0 x 'A' '[B-Za]'
+match 1 x 'a' '[B-Za]'
+match 0 x 'A' '[B-a]'
+match 1 x 'a' '[B-a]'
+match 0 x 'z' '[Z-y]'
+match 1 x 'Z' '[Z-y]'
+
+imatch 1 'a' '[A-Z]'
+imatch 1 'A' '[A-Z]'
+imatch 1 'A' '[a-z]'
+imatch 1 'a' '[a-z]'
+imatch 1 'a' '[[:upper:]]'
+imatch 1 'A' '[[:upper:]]'
+imatch 1 'A' '[[:lower:]]'
+imatch 1 'a' '[[:lower:]]'
+imatch 1 'A' '[B-Za]'
+imatch 1 'a' '[B-Za]'
+imatch 1 'A' '[B-a]'
+imatch 1 'a' '[B-a]'
+imatch 1 'z' '[Z-y]'
+imatch 1 'Z' '[Z-y]'
+
 test_done