testLog.debug("Testing Interleave Controller 1"); GenericController controller = new GenericController(); InterleaveControl sub_1 = new InterleaveControl(); sub_1.setStyle(InterleaveControl.IGNORE_SUB_CONTROLLERS); sub_1.addTestElement(new TestSampler("one")); sub_1.addTestElement(new TestSampler("two")); controller.addTestElement(sub_1); controller.addTestElement(new TestSampler("three")); LoopController sub_2 = new LoopController(); sub_2.setLoops(3); GenericController sub_3 = new GenericController(); sub_2.addTestElement(new TestSampler("four")); sub_3.addTestElement(new TestSampler("five")); sub_3.addTestElement(new TestSampler("six")); sub_2.addTestElement(sub_3); sub_2.addTestElement(new TestSampler("seven")); controller.addTestElement(sub_2); String[] interleaveOrder = new String[] { "one", "two" }; String[] order = new String[] { "dummy", "three", "four", "five", "six", "seven", "four", "five", "six", "seven", "four", "five", "six", "seven" }; int counter = 14; controller.setRunningVersion(true); sub_1.setRunningVersion(true); sub_2.setRunningVersion(true); sub_3.setRunningVersion(true); controller.initialize(); for (int i = 0; i < 4; i++) { assertEquals(14, counter); counter = 0; TestElement sampler = null; while ((sampler = controller.next()) != null) { if (counter == 0) { assertEquals(interleaveOrder[i % 2], sampler.getName()); } else { assertEquals(order[counter], sampler.getName()); } counter++; } }
GenericController controller = new GenericController(); GenericController sub_1 = new OnceOnlyController(); sub_1.addTestElement(new TestSampler("one")); sub_1.addTestElement(new TestSampler("two")); controller.addTestElement(sub_1); controller.addTestElement(new TestSampler("three")); LoopController sub_2 = new LoopController(); sub_2.setLoops(3); GenericController sub_3 = new GenericController(); sub_2.addTestElement(new TestSampler("four")); sub_3.addTestElement(new TestSampler("five")); sub_3.addTestElement(new TestSampler("six")); sub_2.addTestElement(sub_3); sub_2.addTestElement(new TestSampler("seven")); controller.addTestElement(sub_2); String[] interleaveOrder = new String[] { "one", "two" }; String[] order = new String[] { "", "", "three", "four", "five", "six", "seven", "four", "five", "six", "seven", "four", "five", "six", "seven" }; int counter = 15; controller.setRunningVersion(true); sub_1.setRunningVersion(true); sub_2.setRunningVersion(true); sub_3.setRunningVersion(true); controller.initialize(); for (int i = 0; i < 4; i++) { assertEquals(15, counter); counter = 0; if (i > 0) { counter = 2; } TestElement sampler = null; while ((sampler = controller.next()) != null) { if (i == 0 && counter < 2) { assertEquals(interleaveOrder[counter], sampler.getName()); } else { assertEquals(order[counter], sampler.getName()); } counter++; } }
Clone fragments detected by clone detection tool
File path: /jakarta-jmeter-2.3.2/test/src/org/apache/jmeter/control/TestInterleaveControl.java File path: /jakarta-jmeter-2.3.2/test/src/org/apache/jmeter/control/TestOnceOnlyController.java
Method name: void testProcessing() Method name: void testProcessing()
Number of AST nodes: 34 Number of AST nodes: 34
1
testLog.debug("Testing Interleave Controller 1");
2
			GenericController controller = new GenericController();
1
GenericController controller = new GenericController();
3
			InterleaveControl sub_1 = new InterleaveControl();
2
			GenericController sub_1 = new 
4
			sub_1.setStyle(InterleaveControl.IGNORE_SUB_CONTROLLERS);
3
OnceOnlyController();
5
			sub_1.addTestElement(new TestSampler("one"));
4
			sub_1.addTestElement(new TestSampler("one"));
6
			sub_1.addTestElement(new TestSampler("two"));
5
			sub_1.addTestElement(new TestSampler("two"));
7
			controller.addTestElement(sub_1);
6
			controller.addTestElement(sub_1);
8
			controller.addTestElement(new TestSampler("three"));
7
			controller.addTestElement(new TestSampler("three"));
9
			LoopController sub_2 = new LoopController();
8
			LoopController sub_2 = new LoopController();
10
			sub_2.setLoops(3);
9
			sub_2.setLoops(3);
11
			GenericController sub_3 = new GenericController();
10
			GenericController sub_3 = new GenericController();
12
			sub_2.addTestElement(new TestSampler("four"));
11
			sub_2.addTestElement(new TestSampler("four"));
13
			sub_3.addTestElement(new TestSampler("five"));
12
			sub_3.addTestElement(new TestSampler("five"));
14
			sub_3.addTestElement(new TestSampler("six"));
13
			sub_3.addTestElement(new TestSampler("six"));
15
			sub_2.addTestElement(sub_3);
14
			sub_2.addTestElement(sub_3);
16
			sub_2.addTestElement(new TestSampler("seven"));
15
			sub_2.addTestElement(new TestSampler("seven"));
17
			controller.addTestElement(sub_2);
16
			controller.addTestElement(sub_2);
18
			String[] interleaveOrder = new String[] { "one", "two" };
17
			String[] interleaveOrder = new String[] { "one", "two" };
19
			String[] order = new String[] { "dummy", "three", "four", "five", "six", "seven", "four", "five", "six",
18
			String[] order = new String[] { "", "", "three", "four", "five", "six", "seven", "four", "five", "six",
20
					"seven", "four", "five", "six", "seven" };
19
					"seven", "four", "five", "six", "seven" };
21
			int counter = 14;
20
			int counter = 15;
22
			controller.setRunningVersion(true);
21
			controller.setRunningVersion(true);
23
			sub_1.setRunningVersion(true);
22
			sub_1.setRunningVersion(true);
24
			sub_2.setRunningVersion(true);
23
			sub_2.setRunningVersion(true);
25
			sub_3.setRunningVersion(true);
24
			sub_3.setRunningVersion(true);
26
			controller.initialize();
25
			controller.initialize();
27
			for (int i = 0; i < 4; i++) {
26
			for (int i = 0; i < 4; i++) {
28
				assertEquals(14, counter);
27
				assertEquals(15, counter);
29
				counter = 0;
28
				counter = 0;
30
				
29
				if (i > 0) {
30
					counter = 2;
31
				}
31
TestElement sampler = null;
32
				TestElement sampler = null;
32
				while ((sampler = controller.next()) != null) {
33
				while ((sampler = controller.next()) != null) {
33
					if (counter == 0) {
34
					if (i == 0 && counter < 2) {
34
						assertEquals(interleaveOrder[i % 2], sampler.getName());
35
						assertEquals(interleaveOrder[counter], sampler.getName());
35
					} else {
36
					} else {
36
						assertEquals(order[counter], sampler.getName());
37
						assertEquals(order[counter], sampler.getName());
37
					}
38
					}
38
					counter++;
39
					counter++;
39
				}
40
				}
40
			}
41
			}
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.2
Clones locationClones are in different classes having the same super class
Number of node comparisons1