1c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet/*
2c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * Copyright (C) 2012 The Android Open Source Project
3c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet *
4c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * Licensed under the Apache License, Version 2.0 (the "License");
5c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * you may not use this file except in compliance with the License.
6c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * You may obtain a copy of the License at
7c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet *
8c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet *      http://www.apache.org/licenses/LICENSE-2.0
9c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet *
10c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * Unless required by applicable law or agreed to in writing, software
11c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * distributed under the License is distributed on an "AS IS" BASIS,
12c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * See the License for the specific language governing permissions and
14c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet * limitations under the License.
15c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet */
16c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
17c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohetpackage org.apache.tools.ant.types.selectors;
18c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
19c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohetimport junit.framework.TestCase;
20c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
21c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
22c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohetpublic class SelectorUtilsTest extends TestCase {
23c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
24c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet    public void test1() {
25c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertTrue(SelectorUtils.matchPath("**", "a"));
26c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
27c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertTrue(SelectorUtils.matchPath("a/**/b", "a/c/d/b"));
28c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertTrue(SelectorUtils.matchPath("a/**/b", "a/b"));
29c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertFalse(SelectorUtils.matchPath("a/**/b", "a/b/c"));
30c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
31c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertTrue(SelectorUtils.matchPath("a/**", "a"));
32c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertTrue(SelectorUtils.matchPath("a/**", "a/b"));
33c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet
34c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertTrue(SelectorUtils.matchPath("bin/**/*.class", "bin/a/foo.class"));
35c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet        assertFalse(SelectorUtils.matchPath("bin/**/*.class", "bin/a/fooclass"));
36c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet    }
37c5578db599c6a1f36369f79411e7dafa030f9f56Xavier Ducrohet}
38