use of com.newrelic.agent.instrumentation.weaver.ClassWeaverService in project newrelic-java-agent by newrelic.
the class ExtensionServiceTest method setUpAgent.
@Before
public void setUpAgent() throws Exception {
Map<String, Object> configMap = new HashMap<>();
configMap.put(AgentConfigImpl.APP_NAME, EXTENSION_NAME);
AgentConfig config = AgentConfigImpl.createAgentConfig(configMap);
configService = ConfigServiceFactory.createConfigService(config, Collections.<String, Object>emptyMap());
serviceManager = new MockServiceManager(configService);
ServiceFactory.setServiceManager(serviceManager);
final InstrumentationProxy instrumentationProxy = Mockito.mock(InstrumentationProxy.class);
serviceManager.setCoreService(new MockCoreService() {
@Override
public InstrumentationProxy getInstrumentation() {
return instrumentationProxy;
}
});
Mockito.when(instrumentationProxy.isRetransformClassesSupported()).thenReturn(true);
Mockito.when(instrumentationProxy.getAllLoadedClasses()).thenReturn(new Class[] {});
extensionService = new ExtensionService(configService, ExtensionsLoadedListener.NOOP);
serviceManager.setExtensionService(extensionService);
serviceManager.setJmxService(Mockito.mock(JmxService.class));
ClassTransformerService classTransformerService = serviceManager.getClassTransformerService();
ClassRetransformer mockRetransformer = Mockito.mock(ClassRetransformer.class);
Mockito.when(classTransformerService.getLocalRetransformer()).thenReturn(mockRetransformer);
InstrumentationContextManager mockContextManager = Mockito.mock(InstrumentationContextManager.class);
Mockito.when(classTransformerService.getContextManager()).thenReturn(mockContextManager);
ClassWeaverService mockWeaverService = Mockito.mock(ClassWeaverService.class);
Mockito.when(mockContextManager.getClassWeaverService()).thenReturn(mockWeaverService);
Mockito.when(mockWeaverService.reloadExternalWeavePackages(Mockito.<File>anyCollection(), Mockito.<File>anyCollection())).thenReturn(new Runnable() {
@Override
public void run() {
}
});
}
Aggregations