1   package org.andromda.core.common;
2   
3   import junit.framework.TestCase;
4   
5   
6   /***
7    * JUnit tests for {@link org.andromda.common.PathMatcher}
8    *
9    * @author Chad Brandon
10   */
11  public class PathMatcherTest
12      extends TestCase
13  {
14      public void testWildcardMatch()
15      {
16          String path = "org/andromda/some/file/Test.java";
17          assertTrue(PathMatcher.wildcardMatch(path, "**/*.java"));
18          assertFalse(PathMatcher.wildcardMatch(path, "*.java"));
19          assertTrue(PathMatcher.wildcardMatch(path, "*/*/*/*/*.java"));
20          assertFalse(PathMatcher.wildcardMatch(path, "*/*/*.java"));
21          assertTrue(PathMatcher.wildcardMatch(path, "**/*Test.java"));
22          assertTrue(PathMatcher.wildcardMatch(path, "**/*Tes*.java"));
23          assertFalse(PathMatcher.wildcardMatch(path, "**/*TestFile*.java"));
24          assertFalse(PathMatcher.wildcardMatch(path, "**/.java"));
25          assertTrue(PathMatcher.wildcardMatch(path, "org/andromda/**/*"));
26  
27          path = "Test.java";
28          assertTrue(PathMatcher.wildcardMatch(path, "*.java"));
29          assertTrue(PathMatcher.wildcardMatch(path, "**/*.java"));
30          assertTrue(PathMatcher.wildcardMatch(path, "**/*"));
31  
32          assertTrue(PathMatcher.wildcardMatch(path, "*.java"));
33          assertTrue(PathMatcher.wildcardMatch(path, "**.java"));
34          assertTrue(PathMatcher.wildcardMatch(path, "**/*"));
35          assertFalse(PathMatcher.wildcardMatch(path, "***/*.java"));
36  
37          path = "org/Test.java";
38          assertFalse(PathMatcher.wildcardMatch(path, "*.java"));
39          assertTrue(PathMatcher.wildcardMatch(path, "**/*"));
40      }
41  }