use of com.navercorp.pinpoint.bootstrap.instrument.InstrumentClass in project pinpoint by naver.
the class JavassistEngineTest method testGetClass_original.
@Test
public void testGetClass_original() throws Exception {
InstrumentEngine instrumentEngine = newJavassistEngine();
InstrumentContext instrumentContext = mock(InstrumentContext.class);
final byte[] originalByteCode = BytecodeUtils.getClassFile(null, mock);
final InstrumentClass transformClass = instrumentEngine.getClass(instrumentContext, null, mock, originalByteCode);
Assert.assertNotNull(transformClass.getDeclaredMethod("test"));
Assert.assertNull("transform method", transformClass.getDeclaredMethod("transformMethod"));
}
use of com.navercorp.pinpoint.bootstrap.instrument.InstrumentClass in project pinpoint by naver.
the class InvokeAfterCodeGeneratorTest method testGenerate_AroundInterceptor3_methodParam2.
@Test
public void testGenerate_AroundInterceptor3_methodParam2() throws Exception {
final Class<AroundInterceptor3> aroundInterceptor3Class = AroundInterceptor3.class;
final InterceptorDefinition interceptorDefinition = interceptorDefinitionFactory.createInterceptorDefinition(aroundInterceptor3Class);
final InstrumentClass mockClass = mock(InstrumentClass.class);
Mockito.when(mockClass.getName()).thenReturn("TestClass");
final InstrumentMethod mockMethod = mock(InstrumentMethod.class);
Mockito.when(mockMethod.getName()).thenReturn("TestMethod");
Mockito.when(mockMethod.getParameterTypes()).thenReturn(new String[] { "java.lang.Object", "java.lang.Object" });
Mockito.when(mockMethod.getReturnType()).thenReturn("java.lang.Object");
ApiMetaDataService apiMetaDataService = mock(ApiMetaDataService.class);
final InvokeAfterCodeGenerator invokeAfterCodeGenerator = new InvokeAfterCodeGenerator(100, interceptorDefinition, mockClass, mockMethod, apiMetaDataService, false, true);
final String generate = invokeAfterCodeGenerator.generate();
logger.debug("testGenerate_AroundInterceptor3_methodParam2:{}", generate);
Assert.assertTrue(generate.contains("($w)$1"));
Assert.assertTrue(generate.contains("($w)$2"));
Assert.assertFalse(generate.contains("($w)$3"));
Assert.assertTrue(generate.contains("$e"));
}
use of com.navercorp.pinpoint.bootstrap.instrument.InstrumentClass in project pinpoint by naver.
the class InvokeAfterCodeGeneratorTest method testGenerate_AroundInterceptor3_catchClause.
@Test
public void testGenerate_AroundInterceptor3_catchClause() throws Exception {
final Class<AroundInterceptor3> aroundInterceptor3Class = AroundInterceptor3.class;
final InterceptorDefinition interceptorDefinition = interceptorDefinitionFactory.createInterceptorDefinition(aroundInterceptor3Class);
final InstrumentClass mockClass = mock(InstrumentClass.class);
Mockito.when(mockClass.getName()).thenReturn("TestClass");
final InstrumentMethod mockMethod = mock(InstrumentMethod.class);
Mockito.when(mockMethod.getName()).thenReturn("TestMethod");
Mockito.when(mockMethod.getParameterTypes()).thenReturn(new String[] { "java.lang.Object", "java.lang.Object", "java.lang.Object" });
Mockito.when(mockMethod.getReturnType()).thenReturn("java.lang.Object");
ApiMetaDataService apiMetaDataService = mock(ApiMetaDataService.class);
final InvokeAfterCodeGenerator invokeAfterCodeGenerator = new InvokeAfterCodeGenerator(100, interceptorDefinition, mockClass, mockMethod, apiMetaDataService, false, true);
final String generate = invokeAfterCodeGenerator.generate();
logger.debug("testGenerate_AroundInterceptor3_catchClause:{}", generate);
Assert.assertTrue(generate.contains("($w)$1"));
Assert.assertTrue(generate.contains("($w)$2"));
Assert.assertTrue(generate.contains("($w)$3"));
Assert.assertTrue(generate.contains("$e"));
}
use of com.navercorp.pinpoint.bootstrap.instrument.InstrumentClass in project pinpoint by naver.
the class InvokeAfterCodeGeneratorTest method testGenerate_AroundInterceptor3_methodParam4.
@Test
public void testGenerate_AroundInterceptor3_methodParam4() throws Exception {
final Class<AroundInterceptor3> aroundInterceptor3Class = AroundInterceptor3.class;
final InterceptorDefinition interceptorDefinition = interceptorDefinitionFactory.createInterceptorDefinition(aroundInterceptor3Class);
final InstrumentClass mockClass = mock(InstrumentClass.class);
Mockito.when(mockClass.getName()).thenReturn("TestClass");
final InstrumentMethod mockMethod = mock(InstrumentMethod.class);
Mockito.when(mockMethod.getName()).thenReturn("TestMethod");
Mockito.when(mockMethod.getParameterTypes()).thenReturn(new String[] { "java.lang.Object", "java.lang.Object", "java.lang.Object", "java.lang.Object" });
Mockito.when(mockMethod.getReturnType()).thenReturn("java.lang.Object");
ApiMetaDataService apiMetaDataService = mock(ApiMetaDataService.class);
final InvokeAfterCodeGenerator invokeAfterCodeGenerator = new InvokeAfterCodeGenerator(100, interceptorDefinition, mockClass, mockMethod, apiMetaDataService, false, true);
final String generate = invokeAfterCodeGenerator.generate();
logger.debug("testGenerate_AroundInterceptor3_methodParam4:{}", generate);
Assert.assertTrue(generate.contains("($w)$1"));
Assert.assertTrue(generate.contains("($w)$2"));
Assert.assertTrue(generate.contains("($w)$3"));
Assert.assertFalse(generate.contains("($w)$4"));
Assert.assertTrue(generate.contains("$e"));
}
use of com.navercorp.pinpoint.bootstrap.instrument.InstrumentClass in project pinpoint by naver.
the class InvokeAfterCodeGeneratorTest method testGenerate_AroundInterceptor0.
@Test
public void testGenerate_AroundInterceptor0() throws Exception {
final Class<AroundInterceptor0> aroundInterceptor3Class = AroundInterceptor0.class;
final InterceptorDefinition interceptorDefinition = interceptorDefinitionFactory.createInterceptorDefinition(aroundInterceptor3Class);
final InstrumentClass mockClass = mock(InstrumentClass.class);
Mockito.when(mockClass.getName()).thenReturn("TestClass");
final InstrumentMethod mockMethod = mock(InstrumentMethod.class);
Mockito.when(mockMethod.getName()).thenReturn("TestMethod");
Mockito.when(mockMethod.getParameterTypes()).thenReturn(new String[] {});
Mockito.when(mockMethod.getReturnType()).thenReturn("java.lang.Object");
ApiMetaDataService apiMetaDataService = mock(ApiMetaDataService.class);
final InvokeAfterCodeGenerator invokeAfterCodeGenerator = new InvokeAfterCodeGenerator(100, interceptorDefinition, mockClass, mockMethod, apiMetaDataService, false, true);
final String generate = invokeAfterCodeGenerator.generate();
logger.debug("testGenerate_AroundInterceptor0:{}", generate);
Assert.assertFalse(generate.contains("($w)$1"));
Assert.assertFalse(generate.contains("($w)$2"));
Assert.assertFalse(generate.contains("($w)$3"));
Assert.assertTrue(generate.contains("$e"));
}
Aggregations