View Javadoc
1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one or more
3    * contributor license agreements.  See the NOTICE file distributed with
4    * this work for additional information regarding copyright ownership.
5    * The ASF licenses this file to You under the Apache License, Version 2.0
6    * (the "License"); you may not use this file except in compliance with
7    * the License.  You may obtain a copy of the License at
8    *
9    *      http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS,
13   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   * See the License for the specific language governing permissions and
15   * limitations under the License.
16   */
17  package org.apache.commons.vfs2.filter;
18  
19  import java.io.File;
20  import java.util.ArrayList;
21  import java.util.List;
22  
23  import org.apache.commons.vfs2.FileSystemException;
24  import org.junit.Assert;
25  import org.junit.Test;
26  
27  /**
28   * Test for {@link WildcardFileFilter}.
29   */
30  // CHECKSTYLE:OFF Test code
31  public class WildcardFileFilterTest extends BaseFilterTest {
32  
33      @Test
34      public void testAcceptList() throws FileSystemException {
35  
36          // PREPARE
37          final List<String> list = new ArrayList<>();
38          list.add("*.txt");
39          list.add("*.a??");
40          final WildcardFileFilter filter = new WildcardFileFilter(list);
41  
42          // TEST
43          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test1.txt"))));
44          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test2.txt"))));
45          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.a"))));
46          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ab"))));
47          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.abc"))));
48          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ABC"))));
49          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aaa"))));
50          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.Aaa"))));
51          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aAA"))));
52          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.abcd"))));
53          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.xxx"))));
54  
55      }
56  
57      @Test
58      public void testAcceptListIOCaseInsensitive() throws FileSystemException {
59  
60          // PREPARE
61          final List<String> list = new ArrayList<>();
62          list.add("*.txt");
63          list.add("*.a??");
64          final WildcardFileFilter filter = new WildcardFileFilter(IOCase.INSENSITIVE, list);
65  
66          // TEST
67          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test1.txt"))));
68          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test2.txt"))));
69          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.a"))));
70          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ab"))));
71          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.abc"))));
72          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.ABC"))));
73          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aaa"))));
74          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.Aaa"))));
75          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aAA"))));
76          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.abcd"))));
77          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.xxx"))));
78  
79      }
80  
81      @Test
82      public void testAcceptListIOCaseSensitive() throws FileSystemException {
83  
84          // PREPARE
85          final List<String> list = new ArrayList<>();
86          list.add("*.txt");
87          list.add("*.a??");
88          final WildcardFileFilter filter = new WildcardFileFilter(IOCase.SENSITIVE, list);
89  
90          // TEST
91          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test1.txt"))));
92          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test2.txt"))));
93          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.a"))));
94          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ab"))));
95          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.abc"))));
96          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ABC"))));
97          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aaa"))));
98          Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.Aaa"))));
99          Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aAA"))));
100         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.abcd"))));
101         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.xxx"))));
102 
103     }
104 
105     @Test
106     public void testAcceptString() throws FileSystemException {
107 
108         // PREPARE
109         final WildcardFileFilter filter = new WildcardFileFilter("*.txt", "*.a??");
110 
111         // TEST
112         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test1.txt"))));
113         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test2.txt"))));
114         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.a"))));
115         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ab"))));
116         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.abc"))));
117         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ABC"))));
118         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aaa"))));
119         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.Aaa"))));
120         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aAA"))));
121         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.abcd"))));
122         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.xxx"))));
123 
124     }
125 
126     @Test
127     public void testAcceptStringIOCaseInsensitive() throws FileSystemException {
128 
129         // PREPARE
130         final WildcardFileFilter filter = new WildcardFileFilter(IOCase.INSENSITIVE, "*.txt", "*.a??");
131 
132         // TEST
133         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test1.txt"))));
134         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test2.txt"))));
135         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.a"))));
136         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ab"))));
137         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.abc"))));
138         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.ABC"))));
139         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aaa"))));
140         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.Aaa"))));
141         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aAA"))));
142         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.abcd"))));
143         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.xxx"))));
144 
145     }
146 
147     @Test
148     public void testAcceptStringIOCaseSensitive() throws FileSystemException {
149 
150         // PREPARE
151         final WildcardFileFilter filter = new WildcardFileFilter(IOCase.SENSITIVE, "*.txt", "*.a??");
152 
153         // TEST
154         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test1.txt"))));
155         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test2.txt"))));
156         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.a"))));
157         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ab"))));
158         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.abc"))));
159         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.ABC"))));
160         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aaa"))));
161         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.Aaa"))));
162         Assert.assertTrue(filter.accept(createFileSelectInfo(new File("test.aAA"))));
163         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.abcd"))));
164         Assert.assertFalse(filter.accept(createFileSelectInfo(new File("test.xxx"))));
165 
166     }
167 
168 }
169 // CHECKSTYLE:ON