public class ReflectionOptimizerTest extends UnitTestCase { public ReflectionOptimizerTest(String string) { super( string ); } public void testReflectionOptimization() { BytecodeProviderImpl provider = new BytecodeProviderImpl(); ReflectionOptimizer optimizer = provider.getReflectionOptimizer( Bean.class, BeanReflectionHelper.getGetterNames(), BeanReflectionHelper.getSetterNames(), BeanReflectionHelper.getTypes() ); assertNotNull( optimizer ); assertNotNull( optimizer.getInstantiationOptimizer() ); assertNotNull( optimizer.getAccessOptimizer() ); Object instance = optimizer.getInstantiationOptimizer().newInstance(); assertEquals( instance.getClass(), Bean.class ); Bean bean = ( Bean ) instance; optimizer.getAccessOptimizer().setPropertyValues( bean, BeanReflectionHelper.TEST_VALUES ); assertEquals( bean.getSomeString(), BeanReflectionHelper.TEST_VALUES[0] ); Object[] values = optimizer.getAccessOptimizer().getPropertyValues( bean ); assertEquivalent( values, BeanReflectionHelper.TEST_VALUES ); } private void assertEquivalent(Object[] checkValues, Object[] values) { assertEquals( "Different lengths", checkValues.length, values.length ); for ( int i = 0; i < checkValues.length; i++ ) { assertEquals( "different values at index [" + i + "]", checkValues[i], values[i] ); } } public static TestSuite suite() { return new TestSuite( ReflectionOptimizerTest.class )
public class ReflectionOptimizerTest extends UnitTestCase { public ReflectionOptimizerTest(String string) { super( string ); } public void testReflectionOptimization() { BytecodeProviderImpl provider = new BytecodeProviderImpl(); ReflectionOptimizer optimizer = provider.getReflectionOptimizer( Bean.class, BeanReflectionHelper.getGetterNames(), BeanReflectionHelper.getSetterNames(), BeanReflectionHelper.getTypes() ); assertNotNull( optimizer ); assertNotNull( optimizer.getInstantiationOptimizer() ); assertNotNull( optimizer.getAccessOptimizer() ); Object instance = optimizer.getInstantiationOptimizer().newInstance(); assertEquals( instance.getClass(), Bean.class ); Bean bean = ( Bean ) instance; optimizer.getAccessOptimizer().setPropertyValues( bean, BeanReflectionHelper.TEST_VALUES ); assertEquals( bean.getSomeString(), BeanReflectionHelper.TEST_VALUES[0] ); Object[] values = optimizer.getAccessOptimizer().getPropertyValues( bean ); assertEquivalent( values, BeanReflectionHelper.TEST_VALUES ); } private void assertEquivalent(Object[] checkValues, Object[] values) { assertEquals( "Different lengths", checkValues.length, values.length ); for ( int i = 0; i < checkValues.length; i++ ) { assertEquals( "different values at index [" + i + "]", checkValues[i], values[i] ); } } public static TestSuite suite() { return new TestSuite( ReflectionOptimizerTest.class )
Clone fragments detected by clone detection tool
File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/bytecode/cglib/ReflectionOptimizerTest.java File path: /hibernate-distribution-3.3.2.GA/project/testsuite/src/test/java/org/hibernate/test/bytecode/javassist/ReflectionOptimizerTest.java
Method name: Method name:
Number of AST nodes: 0 Number of AST nodes: 0
1
public class ReflectionOptimizerTest extends UnitTestCase {
1
public class ReflectionOptimizerTest extends UnitTestCase {
2
	public ReflectionOptimizerTest(String string) {
2
	public ReflectionOptimizerTest(String string) {
3
		super( string );
3
		super( string );
4
	}
4
	}
5
	public void testReflectionOptimization() {
5
	public void testReflectionOptimization() {
6
		BytecodeProviderImpl provider = new BytecodeProviderImpl();
6
		BytecodeProviderImpl provider = new BytecodeProviderImpl();
7
		ReflectionOptimizer optimizer = provider.getReflectionOptimizer(
7
		ReflectionOptimizer optimizer = provider.getReflectionOptimizer(
8
				Bean.class,
8
				Bean.class,
9
		        BeanReflectionHelper.getGetterNames(),
9
		        BeanReflectionHelper.getGetterNames(),
10
		        BeanReflectionHelper.getSetterNames(),
10
		        BeanReflectionHelper.getSetterNames(),
11
		        BeanReflectionHelper.getTypes()
11
		        BeanReflectionHelper.getTypes()
12
		);
12
		);
13
		assertNotNull( optimizer );
13
		assertNotNull( optimizer );
14
		assertNotNull( optimizer.getInstantiationOptimizer() );
14
		assertNotNull( optimizer.getInstantiationOptimizer() );
15
		assertNotNull( optimizer.getAccessOptimizer() );
15
		assertNotNull( optimizer.getAccessOptimizer() );
16
		Object instance = optimizer.getInstantiationOptimizer().newInstance();
16
		Object instance = optimizer.getInstantiationOptimizer().newInstance();
17
		assertEquals( instance.getClass(), Bean.class );
17
		assertEquals( instance.getClass(), Bean.class );
18
		Bean bean = ( Bean ) instance;
18
		Bean bean = ( Bean ) instance;
19
		optimizer.getAccessOptimizer().setPropertyValues( bean, BeanReflectionHelper.TEST_VALUES );
19
		optimizer.getAccessOptimizer().setPropertyValues( bean, BeanReflectionHelper.TEST_VALUES );
20
		assertEquals( bean.getSomeString(), BeanReflectionHelper.TEST_VALUES[0] );
20
		assertEquals( bean.getSomeString(), BeanReflectionHelper.TEST_VALUES[0] );
21
		Object[] values = optimizer.getAccessOptimizer().getPropertyValues( bean );
21
		Object[] values = optimizer.getAccessOptimizer().getPropertyValues( bean );
22
		assertEquivalent( values, BeanReflectionHelper.TEST_VALUES );
22
		assertEquivalent( values, BeanReflectionHelper.TEST_VALUES );
23
	}
23
	}
24
	private void assertEquivalent(Object[] checkValues, Object[] values) {
24
	private void assertEquivalent(Object[] checkValues, Object[] values) {
25
		assertEquals( "Different lengths", checkValues.length, values.length );
25
		assertEquals( "Different lengths", checkValues.length, values.length );
26
		for ( int i = 0; i < checkValues.length; i++ ) {
26
		for ( int i = 0; i < checkValues.length; i++ ) {
27
			assertEquals( "different values at index [" + i + "]", checkValues[i], values[i] );
27
			assertEquals( "different values at index [" + i + "]", checkValues[i], values[i] );
28
		}
28
		}
29
	}
29
	}
30
	public static TestSuite suite() {
30
	public static TestSuite suite() {
31
		return new TestSuite( ReflectionOptimizerTest.class )
31
		return new TestSuite( ReflectionOptimizerTest.class )
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