From c3de89ea62f061afaf2bd83a2ed7d13a9d7fbf0f Mon Sep 17 00:00:00 2001 From: Woonduk Kang Date: Tue, 15 Apr 2014 07:21:07 +0000 Subject: [PATCH] =?UTF-8?q?[=EA=B0=95=EC=9A=B4=EB=8D=95]=20[PROFILER-17]?= =?UTF-8?q?=20loader=EB=A5=BC=20=ED=86=B5=ED=95=B4=20test=EB=A5=BC=20?= =?UTF-8?q?=EA=B0=84=EC=A0=91=EC=8B=A4=ED=96=89=ED=95=98=EB=8F=84=EB=A1=9D?= =?UTF-8?q?=20=EC=88=98=EC=A0=95.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: http://svn.bds.nhncorp.com/pe/hippo-tomcat-profiler/trunk@3683 84d0f5b1-2673-498c-a247-62c4ff18d310 --- .../orm/ibatis/SqlClientImplTest.java | 60 +++++++++++++++++++ .../ibatis/SqlMapClientImplModifierTest.java | 40 +++---------- 2 files changed, 68 insertions(+), 32 deletions(-) create mode 100644 src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlClientImplTest.java diff --git a/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlClientImplTest.java b/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlClientImplTest.java new file mode 100644 index 000000000..685406167 --- /dev/null +++ b/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlClientImplTest.java @@ -0,0 +1,60 @@ +package com.nhn.pinpoint.profiler.modifier.orm.ibatis; + +import com.nhn.pinpoint.bootstrap.ContextClassLoaderExecuteTemplate; +import com.nhn.pinpoint.bootstrap.config.ProfilerConfig; +import com.nhn.pinpoint.bootstrap.logging.PLoggerFactory; +import com.nhn.pinpoint.common.ServiceType; +import com.nhn.pinpoint.profiler.DefaultAgent; +import com.nhn.pinpoint.profiler.DummyInstrumentation; +import com.nhn.pinpoint.profiler.logging.Slf4jLoggerBinder; +import com.nhn.pinpoint.profiler.util.MockAgent; +import com.nhn.pinpoint.profiler.util.TestClassLoader; +import org.junit.Before; +import org.junit.Test; +import org.mockito.MockitoAnnotations; + +import java.util.concurrent.Callable; + +/** + * @author emeroad + */ +public class SqlClientImplTest { + + private static TestClassLoader LOADER; + private static ContextClassLoaderExecuteTemplate TEMPLATE; + + @Before + public void setUp() throws Exception { + System.setProperty("catalina.home", "test"); + PLoggerFactory.initialize(new Slf4jLoggerBinder()); + + ProfilerConfig profilerConfig = new ProfilerConfig(); + + String path = ProfilerConfig.class.getClassLoader().getResource("pinpoint.config").getPath(); + profilerConfig.readConfigFile(path); + + profilerConfig.setApplicationServerType(ServiceType.STAND_ALONE); + DefaultAgent agent = new MockAgent("", new DummyInstrumentation(), profilerConfig); + LOADER = new TestClassLoader(agent); + + TEMPLATE = new ContextClassLoaderExecuteTemplate(LOADER); + MockitoAnnotations.initMocks(this); + } + + @Test + public void testModify() throws Throwable { + + TEMPLATE.execute(new Callable() { + @Override + public Object call() throws Exception { + try { + LOADER.runTest("com.nhn.pinpoint.profiler.modifier.orm.ibatis.SqlMapClientImplModifierTest", "testModify"); + } catch (Throwable th) { + throw new RuntimeException(th.getMessage(), th); + } + return null; + } + }); + + } +} diff --git a/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlMapClientImplModifierTest.java b/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlMapClientImplModifierTest.java index 461f49b24..2aa8ba7c5 100644 --- a/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlMapClientImplModifierTest.java +++ b/src/test/java/com/nhn/pinpoint/profiler/modifier/orm/ibatis/SqlMapClientImplModifierTest.java @@ -4,26 +4,14 @@ import static org.junit.Assert.*; import java.lang.reflect.Constructor; -import org.junit.Before; -import org.junit.BeforeClass; import org.junit.Test; import org.mockito.Mock; -import org.mockito.MockitoAnnotations; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import com.ibatis.common.resources.Resources; import com.ibatis.sqlmap.client.SqlMapClient; import com.ibatis.sqlmap.engine.impl.SqlMapClientImpl; import com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate; -import com.nhn.pinpoint.bootstrap.config.ProfilerConfig; -import com.nhn.pinpoint.bootstrap.logging.PLoggerFactory; -import com.nhn.pinpoint.common.ServiceType; -import com.nhn.pinpoint.profiler.DefaultAgent; -import com.nhn.pinpoint.profiler.DummyInstrumentation; -import com.nhn.pinpoint.profiler.logging.Slf4jLoggerBinder; -import com.nhn.pinpoint.profiler.util.MockAgent; -import com.nhn.pinpoint.profiler.util.TestClassLoader; /** * @@ -33,35 +21,23 @@ public class SqlMapClientImplModifierTest { private final Logger logger = LoggerFactory.getLogger(SqlMapClientImplModifierTest.class); - private static TestClassLoader loader; - @Mock private SqlMapExecutorDelegate mockSqlMapExecutorDelegate; - @Before - public void setUp() throws Exception { - System.setProperty("catalina.home", "test"); - PLoggerFactory.initialize(new Slf4jLoggerBinder()); - ProfilerConfig profilerConfig = new ProfilerConfig(); - - String path = ProfilerConfig.class.getClassLoader().getResource("pinpoint.config").getPath(); - profilerConfig.readConfigFile(path); - - profilerConfig.setApplicationServerType(ServiceType.STAND_ALONE); - DefaultAgent agent = new MockAgent("", new DummyInstrumentation(), profilerConfig); - loader = new TestClassLoader(agent); - MockitoAnnotations.initMocks(this); - } @Test public void testModify() throws Exception { final String className = SqlMapClientImplModifier.TARGET_CLASS_NAME.replace('/', '.'); - @SuppressWarnings("unchecked") - Class sqlMapClientClazz = (Class)loader.loadClass(className); - Constructor[] constructors = sqlMapClientClazz.getConstructors(); - SqlMapClient sqlMapClient = (SqlMapClient)constructors[0].newInstance(mockSqlMapExecutorDelegate); + +// Class sqlMapClientClazz = (Class)loader.loadClass(className); +// Class sqlMapClientClazz = (Class)loader.loadClass(className); +// +// Constructor[] constructors = sqlMapClientClazz.getConstructors(); +// SqlMapClient sqlMapClient = (SqlMapClient)constructors[0].newInstance(mockSqlMapExecutorDelegate); + + SqlMapClient sqlMapClient = new SqlMapClientImpl(mockSqlMapExecutorDelegate); // SqlMapClient sqlMapClient = sqlMapClientClazz.getDeclaredConstructor(SqlMapExecutorDelegate.class).newInstance(mockSqlMapExecutorDelegate); sqlMapClient.queryForList("abc"); }