Lines Matching refs:fnmatch

33 TEST(fnmatch, basic) {  in TEST()  argument
34 EXPECT_EQ(0, fnmatch("abc", "abc", 0)); in TEST()
35 EXPECT_EQ(FNM_NOMATCH, fnmatch("abc", "abd", 0)); in TEST()
38 TEST(fnmatch, casefold) { in TEST() argument
39 EXPECT_EQ(FNM_NOMATCH, fnmatch("abc", "aBc", 0)); in TEST()
40 EXPECT_EQ(0, fnmatch("abc", "aBc", FNM_CASEFOLD)); in TEST()
43 TEST(fnmatch, character_class) { in TEST() argument
45 EXPECT_EQ(0, fnmatch("ab[cd]", "abc", 0)); in TEST()
46 EXPECT_EQ(0, fnmatch("ab[cd]", "abd", 0)); in TEST()
47 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab[cd]", "abe", 0)); in TEST()
50 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab[^cd]", "abc", 0)); in TEST()
51 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab[^cd]", "abd", 0)); in TEST()
52 EXPECT_EQ(0, fnmatch("ab[^cd]", "abe", 0)); in TEST()
55 EXPECT_EQ(0, fnmatch("a[0-9]b", "a0b", 0)); in TEST()
56 EXPECT_EQ(FNM_NOMATCH, fnmatch("a[0-9]b", "aOb", 0)); in TEST()
59 EXPECT_EQ(0, fnmatch("a[^0-9]b", "aOb", 0)); in TEST()
60 EXPECT_EQ(FNM_NOMATCH, fnmatch("a[^0-9]b", "a0b", 0)); in TEST()
63 EXPECT_EQ(0, fnmatch("a[[:digit:]]b", "a0b", 0)); in TEST()
64 EXPECT_EQ(FNM_NOMATCH, fnmatch("a[[:digit:]]b", "aOb", 0)); in TEST()
67 EXPECT_EQ(FNM_NOMATCH, fnmatch("a[^[:digit:]]b", "a0b", 0)); in TEST()
68 EXPECT_EQ(0, fnmatch("a[^[:digit:]]b", "aOb", 0)); in TEST()
71 TEST(fnmatch, wild_any) { in TEST() argument
72 EXPECT_EQ(0, fnmatch("ab*", "ab", 0)); in TEST()
73 EXPECT_EQ(0, fnmatch("ab*", "abc", 0)); in TEST()
74 EXPECT_EQ(0, fnmatch("ab*", "abcd", 0)); in TEST()
75 EXPECT_EQ(0, fnmatch("ab*", "ab/cd", 0)); in TEST()
76 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab*", "ab/cd", FNM_PATHNAME)); in TEST()
79 TEST(fnmatch, wild_one) { in TEST() argument
80 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab?", "ab", 0)); in TEST()
81 EXPECT_EQ(0, fnmatch("ab?", "abc", 0)); in TEST()
82 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab?", "abcd", 0)); in TEST()
83 EXPECT_EQ(0, fnmatch("ab?d", "abcd", 0)); in TEST()
84 EXPECT_EQ(0, fnmatch("ab?cd", "ab/cd", 0)); in TEST()
85 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab?cd", "ab/cd", FNM_PATHNAME)); in TEST()
88 TEST(fnmatch, leading_dir) { in TEST() argument
89 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab", "abcd", FNM_LEADING_DIR)); in TEST()
90 EXPECT_EQ(0, fnmatch("ab*", "abcd", FNM_LEADING_DIR)); in TEST()
91 EXPECT_EQ(0, fnmatch("*ab*", "1/2/3/4/abcd", FNM_LEADING_DIR)); in TEST()
92 EXPECT_EQ(FNM_NOMATCH, fnmatch("*ab*", "1/2/3/4/abcd", FNM_PATHNAME | FNM_LEADING_DIR)); in TEST()
93 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab?", "abcd", FNM_LEADING_DIR)); in TEST()
95 EXPECT_EQ(0, fnmatch("ab", "ab/cd", FNM_LEADING_DIR)); in TEST()
96 EXPECT_EQ(0, fnmatch("ab", "ab/cd", FNM_PATHNAME | FNM_LEADING_DIR)); in TEST()
99 EXPECT_EQ(FNM_NOMATCH, fnmatch("*ab", "1/2/3/4/ab/cd", FNM_PATHNAME | FNM_LEADING_DIR)); in TEST()
100 EXPECT_EQ(0, fnmatch("ab*", "ab/cd/ef", FNM_LEADING_DIR)); in TEST()
101 EXPECT_EQ(0, fnmatch("ab*", "ab/cd/ef", FNM_PATHNAME | FNM_LEADING_DIR)); in TEST()
102 EXPECT_EQ(0, fnmatch("*ab*", "1/2/3/4/ab/cd/ef", FNM_LEADING_DIR)); in TEST()
103 EXPECT_EQ(FNM_NOMATCH, fnmatch("*ab*", "1/2/3/4/ab/cd/ef", FNM_PATHNAME | FNM_LEADING_DIR)); in TEST()
104 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab?", "ab/cd/ef", FNM_LEADING_DIR)); in TEST()
105 EXPECT_EQ(0, fnmatch("ab?", "abx/cd/ef", FNM_LEADING_DIR)); in TEST()
107 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab/", "ab/cd/ef", FNM_LEADING_DIR)); in TEST()
108 EXPECT_EQ(0, fnmatch("ab/*", "ab/cd/ef", FNM_LEADING_DIR)); in TEST()
109 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab/?", "ab/cd/ef", FNM_LEADING_DIR)); in TEST()
113 EXPECT_EQ(0, fnmatch("ab?c", "ab/c/ef", FNM_LEADING_DIR)); in TEST()
115 EXPECT_EQ(0, fnmatch("ab*c*", "ab/1/2/3/c/d/e", FNM_LEADING_DIR)); in TEST()
116 EXPECT_EQ(0, fnmatch("ab?c*", "ab/c/ef", FNM_LEADING_DIR)); in TEST()
118 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab*c/", "ab/1/2/3/c/d/e", FNM_LEADING_DIR)); in TEST()
119 EXPECT_EQ(FNM_NOMATCH, fnmatch("ab?c/", "ab/c/ef", FNM_LEADING_DIR)); in TEST()
121 EXPECT_EQ(0, fnmatch("ab*c/*", "ab/1/2/3/c/d/e", FNM_LEADING_DIR)); in TEST()
122 EXPECT_EQ(0, fnmatch("ab?c/*", "ab/c/ef", FNM_LEADING_DIR)); in TEST()