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