summary refs log tree commit diff
path: root/posix/testfnm.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-01-26 03:46:22 +0000
committerUlrich Drepper <drepper@redhat.com>2000-01-26 03:46:22 +0000
commit479248949b9cc41fc0b133b3510232d8a1b57767 (patch)
treed16f781c00facd9096371a768ba4093caad84b7e /posix/testfnm.c
parent1827fc4c9819187f1084fecd92f3071e3482defa (diff)
downloadglibc-479248949b9cc41fc0b133b3510232d8a1b57767.tar.gz
glibc-479248949b9cc41fc0b133b3510232d8a1b57767.tar.xz
glibc-479248949b9cc41fc0b133b3510232d8a1b57767.zip
Update.
2000-01-25  Ulrich Drepper  <drepper@cygnus.com>

	* posix/fnmatch_loop.c: Fix problem with FNM_LEADING_DIR.
	* posix/testfnm.c: Add a few more tests.  Rearrange test output.
Diffstat (limited to 'posix/testfnm.c')
-rw-r--r--posix/testfnm.c22
1 files changed, 13 insertions, 9 deletions
diff --git a/posix/testfnm.c b/posix/testfnm.c
index ebdfab41de..bec08b2b1a 100644
--- a/posix/testfnm.c
+++ b/posix/testfnm.c
@@ -13,9 +13,9 @@ struct {
   { "a/b", "a[/]b", 0, 0 },
   { "a/b", "a[/]b", FNM_PATHNAME, FNM_NOMATCH },
   { "a/b", "[a-z]/[a-z]", 0, 0 },
-  { "a/b", "*", FNM_FILE_NAME, FNM_NOMATCH },
-  { "a/b", "*[/]b", FNM_FILE_NAME, FNM_NOMATCH },
-  { "a/b", "*[b]", FNM_FILE_NAME, FNM_NOMATCH },
+  { "a/b", "*", FNM_PATHNAME, FNM_NOMATCH },
+  { "a/b", "*[/]b", FNM_PATHNAME, FNM_NOMATCH },
+  { "a/b", "*[b]", FNM_PATHNAME, FNM_NOMATCH },
   { "a/b", "[*]/b", 0, FNM_NOMATCH },
   { "*/b", "[*]/b", 0, 0 },
   { "a/b", "[?]/b", 0, FNM_NOMATCH },
@@ -51,6 +51,9 @@ struct {
   { "a.b", "a?b", FNM_PATHNAME|FNM_PERIOD, 0 },
   { "a.b", "a*b", FNM_PATHNAME|FNM_PERIOD, 0 },
   { "a.b", "a[.]b", FNM_PATHNAME|FNM_PERIOD, 0 },
+  { "a/b", "*a*", FNM_PATHNAME|FNM_LEADING_DIR, 0 },
+  { "ab/c", "*a?", FNM_PATHNAME|FNM_LEADING_DIR, 0 },
+  { "ab/c", "a?", FNM_PATHNAME|FNM_LEADING_DIR, 0 },
 };
 
 int
@@ -64,13 +67,14 @@ main (void)
       int match;
 
       match = fnmatch (tests[i].pattern, tests[i].name, tests[i].flags);
+
+      printf ("[%2zd]  %s %s %s  -> %s\n", i, tests[i].pattern,
+	      match == 0 ? "matches" : "does not match",
+	      tests[i].name,
+	      match != tests[i].expected ? "FAIL" : "OK");
+
       if (match != tests[i].expected)
-	{
-	  printf ("%s %s %s\n", tests[i].pattern,
-		  match == 0 ? "matches" : "does not match",
-		  tests[i].name);
-	  errors++;
-	}
+	++errors ;
     }
 
   exit (errors != 0);