fs.addFilter("test1","@test2@"); fs.addFilter("test2", "@test@"); fs.addFilter("test3", "testvalue"); fs.setBeginToken("@"); fs.setEndToken("@"); assertEquals(result, fs.replaceTokens(line)); } /** * Test to see what happens when the resolving occurs in * what would be an infinite loop, but with recursion disabled. */ public void testRecursionDisabled() { String result = "@test1@ line testvalue"; String line = "@test@ line @test2@"; FilterSet fs = new FilterSet(); fs.addFilter("test", "@test1@"); fs.addFilter("test1","@test@"); fs.addFilter("test2", "testvalue"); fs
fs.addFilter("test", "@test1@"); fs.addFilter("test1","@test2@"); fs.addFilter("test2", "it works"); fs.setBeginToken("@"); fs.setEndToken("@"); assertEquals(result, fs.replaceTokens(line)); } /** * Test to see what happens when the resolving occurs in an * infinite loop. */ public void testInfinite() { String result = "@test@ line testvalue"; String line = "@test@ line @test3@"; FilterSet fs = new FilterSet(); fs.addFilter("test", "@test1@"); fs.addFilter("test1","@test2@"); fs.addFilter("test2", "@test@"); fs
Clone fragments detected by clone detection tool
File path: /apache-ant-1.7.0/src/tests/junit/org/apache/tools/ant/types/FilterSetTest.java File path: /apache-ant-1.7.0/src/tests/junit/org/apache/tools/ant/types/FilterSetTest.java
Method name: Method name:
Number of AST nodes: 0 Number of AST nodes: 0
1
fs.addFilter("test", "@test1@");
1
fs.addFilter("test1","@test2@");
2
        fs.addFilter("test1","@test2@");
2
        fs.addFilter("test2", "@test@");
3
        fs.addFilter("test2", "
3
        fs.addFilter("test3", "testvalue");
4
it works");
4
        fs.setBeginToken("@");
5
        fs.setBeginToken("@");
5
        fs.setEndToken("@");
6
        fs.setEndToken("@");
6
        assertEquals(result, fs.replaceTokens(line));
7
        assertEquals(result, fs.replaceTokens(line));
7
    }
8
    }
8
    /**
9
    /**
9
     * Test to see what happens when the resolving occurs in
10
     * Test to see what happens when the resolving occurs in an
10
     * what would be an infinite loop, but with recursion disabled.
11
     * infinite loop.
11
     */
12
     */
12
    public void testRecursionDisabled() {
13
    public void testInfinite() {
13
        String result = "@test1@ line testvalue";
14
        String result = "@test@ line testvalue";
14
        String line = "@test@ line @test2@";
15
        String line = "@test@ line @test3@";
15
        FilterSet fs = new FilterSet();
16
        FilterSet fs = new FilterSet();
16
        fs.addFilter("test", "@test1@");
17
        fs.addFilter("test", "@test1@");
17
        fs.addFilter("test1","@test@");
18
        fs.addFilter("test1","@test2@");
18
        fs.addFilter("test2", "testvalue");
19
        fs.addFilter("test2", "@test@");
19
        fs
20
        fs
Summary
Number of common nesting structure subtrees0
Number of refactorable cases0
Number of non-refactorable cases0
Time elapsed for finding largest common nesting structure subtrees (ms)0.0
Clones location
Number of node comparisons0