1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.file.filters;
12
13 import org.mule.tck.junit4.AbstractMuleTestCase;
14
15 import org.junit.Test;
16
17 import static org.junit.Assert.assertFalse;
18 import static org.junit.Assert.assertNotNull;
19 import static org.junit.Assert.assertNull;
20 import static org.junit.Assert.assertTrue;
21
22 public class FilenameRegexFilterTestCase extends AbstractMuleTestCase
23 {
24
25 @Test
26 public void testFilenameRegexFilter()
27 {
28 FilenameRegexFilter filter = new FilenameRegexFilter();
29 assertNull(filter.getPattern());
30 assertFalse(filter.accept("foo"));
31
32 filter.setPattern("[0-9]*_test.csv");
33 assertNotNull(filter.getPattern());
34 filter.setCaseSensitive(true);
35 assertNotNull(filter.getPattern());
36 filter.setPattern(null);
37 assertNull(filter.getPattern());
38
39 filter.setPattern("[0-9]*_test.csv");
40 filter.setCaseSensitive(true);
41 String fileNameMatch = "20060101_test.csv";
42 String fileNameNoMatch1 = "20060101_test_test.csv";
43 String fileNameNoMatch2 = "20060101_TEST.csv";
44
45 assertNotNull(filter.getPattern());
46 assertTrue(filter.accept(fileNameMatch));
47 assertFalse(filter.accept(fileNameNoMatch1));
48 assertFalse(filter.accept(fileNameNoMatch2));
49
50 filter.setCaseSensitive(false);
51 assertTrue(filter.accept(fileNameMatch));
52 assertFalse(filter.accept(fileNameNoMatch1));
53 assertTrue(filter.accept(fileNameNoMatch2));
54 }
55
56 }