This source file includes following definitions.
- main
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 #include <config.h>
20
21 #include <fnmatch.h>
22
23 #include "signature.h"
24 SIGNATURE_CHECK (fnmatch, int, (char const *, char const *, int));
25
26 #include "macros.h"
27
28 int
29 main ()
30 {
31 int res;
32
33 ASSERT (res = fnmatch ("", "", 0) == 0);
34
35 ASSERT (res = fnmatch ("*", "", 0) == 0);
36 ASSERT (res = fnmatch ("*", "foo", 0) == 0);
37 ASSERT (res = fnmatch ("*", "bar", 0) == 0);
38 ASSERT (res = fnmatch ("*", "*", 0) == 0);
39 ASSERT (res = fnmatch ("**", "f", 0) == 0);
40 ASSERT (res = fnmatch ("**", "foo.txt", 0) == 0);
41 ASSERT (res = fnmatch ("*.*", "foo.txt", 0) == 0);
42
43 ASSERT (res = fnmatch ("foo*.txt", "foobar.txt", 0) == 0);
44
45 ASSERT (res = fnmatch ("foo.txt", "foo.txt", 0) == 0);
46 ASSERT (res = fnmatch ("foo\\.txt", "foo.txt", 0) == 0);
47 ASSERT (res = fnmatch ("foo\\.txt", "foo.txt", FNM_NOESCAPE) == FNM_NOMATCH);
48
49
50
51
52
53 ASSERT (res = fnmatch ("[/b", "[/b", 0) == 0);
54
55 ASSERT (fnmatch ("[[:alpha:]'[:alpha:]\0]", "a", 0) == FNM_NOMATCH);
56 ASSERT (fnmatch ("[a[.\0.]]", "a", 0) == FNM_NOMATCH);
57 #ifdef FNM_EXTMATCH
58 ASSERT (fnmatch ("**(!()", "**(!()", FNM_EXTMATCH) == 0);
59 #endif
60 #ifdef FNM_LEADING_DIR
61 ASSERT (fnmatch ("x?y", "x/y/z", FNM_PATHNAME | FNM_LEADING_DIR)
62 == FNM_NOMATCH);
63 #endif
64
65 return 0;
66 }