diff --git a/cat-client/src/test/java/com/dianping/cat/servlet/CatFilterTest.java b/cat-client/src/test/java/com/dianping/cat/servlet/CatFilterTest.java index 5ad26812106dceb815ccdb6886381d2e36699a88..cfab77e2b8ecf8892f91061bfdd2c02c17250637 100644 --- a/cat-client/src/test/java/com/dianping/cat/servlet/CatFilterTest.java +++ b/cat-client/src/test/java/com/dianping/cat/servlet/CatFilterTest.java @@ -16,8 +16,6 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.eclipse.jetty.webapp.WebAppContext; -import org.junit.After; -import org.junit.Before; import org.junit.Test; import org.unidal.helper.Files; import org.unidal.helper.Joiners; @@ -31,17 +29,6 @@ import com.dianping.cat.message.Transaction; import junit.framework.Assert; public class CatFilterTest extends JettyServer { - @After - public void after() throws Exception { - super.stopServer(); - } - - @Before - public void before() throws Exception { - System.setProperty("devMode", "true"); - super.startServer(); - } - @Override protected String getContextPath() { return "/mock"; diff --git a/cat-client/src/test/resources/com/dianping/cat/configuration/config.xml b/cat-client/src/test/resources/com/dianping/cat/configuration/config.xml index 66a68de5089d779de4ffa580eaec02f803107848..53c02f08856347a1a8221b9b8c315de959152329 100644 --- a/cat-client/src/test/resources/com/dianping/cat/configuration/config.xml +++ b/cat-client/src/test/resources/com/dianping/cat/configuration/config.xml @@ -1,6 +1,6 @@ - target/catlog + target/cat diff --git a/cat-consumer/src/main/java/com/dianping/cat/consumer/state/StateAnalyzer.java b/cat-consumer/src/main/java/com/dianping/cat/consumer/state/StateAnalyzer.java index 6af0f2fa2d517162184c0a8cc1116def00d38bd9..3a2965303720457b9dae6b23fa89190b8dc19729 100644 --- a/cat-consumer/src/main/java/com/dianping/cat/consumer/state/StateAnalyzer.java +++ b/cat-consumer/src/main/java/com/dianping/cat/consumer/state/StateAnalyzer.java @@ -6,11 +6,13 @@ import java.util.Map.Entry; import java.util.concurrent.atomic.AtomicLong; import org.unidal.lookup.annotation.Inject; +import org.unidal.lookup.annotation.Named; import org.unidal.lookup.logging.LogEnabled; import org.unidal.lookup.logging.Logger; import com.dianping.cat.Constants; import com.dianping.cat.analysis.AbstractMessageAnalyzer; +import com.dianping.cat.analysis.MessageAnalyzer; import com.dianping.cat.config.server.ServerFilterConfigManager; import com.dianping.cat.configuration.NetworkInterfaceManager; import com.dianping.cat.consumer.state.model.entity.Detail; @@ -19,11 +21,12 @@ import com.dianping.cat.consumer.state.model.entity.Message; import com.dianping.cat.consumer.state.model.entity.ProcessDomain; import com.dianping.cat.consumer.state.model.entity.StateReport; import com.dianping.cat.message.spi.MessageTree; -import com.dianping.cat.report.ReportManager; import com.dianping.cat.report.DefaultReportManager.StoragePolicy; +import com.dianping.cat.report.ReportManager; import com.dianping.cat.statistic.ServerStatistic.Statistic; import com.dianping.cat.statistic.ServerStatisticManager; +@Named(type = MessageAnalyzer.class, value = StateAnalyzer.ID, instantiationStrategy = Named.PER_LOOKUP) public class StateAnalyzer extends AbstractMessageAnalyzer implements LogEnabled { public static final String ID = "state"; @@ -36,7 +39,6 @@ public class StateAnalyzer extends AbstractMessageAnalyzer implemen @Inject private ServerFilterConfigManager m_serverFilterConfigManager; - @Inject private String m_ip = NetworkInterfaceManager.INSTANCE.getLocalHostAddress(); private Machine buildStateInfo(Machine machine) { @@ -209,4 +211,8 @@ public class StateAnalyzer extends AbstractMessageAnalyzer implemen machine.findOrCreateProcessDomain(domain).addIp(ip); } } + + public void setIp(String ip) { + m_ip = ip; + } } diff --git a/cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTest.java b/cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTest.java index 8b48753ce5c20a71f3459bb127282f96196760cf..cece92346512436c3d6977d85ab6fb3218d931cd 100644 --- a/cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTest.java +++ b/cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTest.java @@ -30,7 +30,7 @@ public class StateAnalyzerTest extends ComponentTestCase { Date date = sdf.parse("20120101 00:00:00:00"); m_analyzer = (StateAnalyzer) lookup(MessageAnalyzer.class, StateAnalyzer.ID); - + m_analyzer.setIp("192.168.1.1"); m_analyzer.initialize(date.getTime(), Constants.HOUR, Constants.MINUTE * 5); } diff --git a/cat-consumer/src/test/java/com/dianping/cat/consumer/state/Configurator.java b/cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTestConfigurator.java similarity index 62% rename from cat-consumer/src/test/java/com/dianping/cat/consumer/state/Configurator.java rename to cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTestConfigurator.java index 000564d1d4eda66186f55c810cb006d8fe3c8dbb..2ed9ae7af2c071e7efa641b6fa08d0e1a91b94e4 100644 --- a/cat-consumer/src/test/java/com/dianping/cat/consumer/state/Configurator.java +++ b/cat-consumer/src/test/java/com/dianping/cat/consumer/state/StateAnalyzerTestConfigurator.java @@ -4,50 +4,50 @@ import java.util.ArrayList; import java.util.List; import org.unidal.lookup.annotation.Inject; +import org.unidal.lookup.annotation.Named; import org.unidal.lookup.configuration.AbstractResourceConfigurator; import org.unidal.lookup.configuration.Component; import com.dianping.cat.Constants; -import com.dianping.cat.analysis.MessageAnalyzer; -import com.dianping.cat.config.server.ServerConfigManager; import com.dianping.cat.consumer.MockReportManager; import com.dianping.cat.consumer.state.model.entity.StateReport; import com.dianping.cat.report.ReportDelegate; import com.dianping.cat.report.ReportManager; -import com.dianping.cat.statistic.ServerStatisticManager; - -public class Configurator extends AbstractResourceConfigurator { +public class StateAnalyzerTestConfigurator extends AbstractResourceConfigurator { public static void main(String[] args) { - generatePlexusComponentsXmlFile(new Configurator()); - } - - protected Class getTestClass() { - return StateAnalyzerTest.class; + generatePlexusComponentsXmlFile(new StateAnalyzerTestConfigurator()); } @Override public List defineComponents() { List all = new ArrayList(); - final String ID = StateAnalyzer.ID; - all.add(C(ReportManager.class, ID, MockStateReportManager.class)// - .req(ReportDelegate.class, ID)); - all.add(C(ReportDelegate.class, ID, ExtendedStateDelegate.class)); - all.add(C(MessageAnalyzer.class, ID, StateAnalyzer.class).req(ReportManager.class, ID) - .req(ServerConfigManager.class, ServerStatisticManager.class).config(E("m_ip").value("192.168.1.1"))); + all.add(A(MockStateReportManager.class)); + all.add(A(ExtendedStateDelegate.class)); + all.add(A(StateAnalyzer.class)); return all; } + protected Class getTestClass() { + return StateAnalyzerTest.class; + } + + @Named(type = ReportDelegate.class, value = StateAnalyzer.ID) public static class ExtendedStateDelegate extends StateDelegate { } + @Named(type = ReportManager.class, value = StateAnalyzer.ID) public static class MockStateReportManager extends MockReportManager { + @Inject(StateAnalyzer.ID) + private ReportDelegate m_delegate; + private StateReport m_report; - @Inject - private ReportDelegate m_delegate; + @Override + public void destory() { + } @Override public StateReport getHourlyReport(long startTime, String domain, boolean createIfNotExist) { @@ -57,10 +57,5 @@ public class Configurator extends AbstractResourceConfigurator { return m_report; } - - @Override - public void destory() { - } } - } diff --git a/cat-consumer/src/test/resources/com/dianping/cat/consumer/state/StateAnalyzerTest.xml b/cat-consumer/src/test/resources/com/dianping/cat/consumer/state/StateAnalyzerTest.xml index 092eb17448523da5ad9a639ab658b48424d09ab1..4a9a56a5498574de4f4f9a3d43e470410e102b24 100644 --- a/cat-consumer/src/test/resources/com/dianping/cat/consumer/state/StateAnalyzerTest.xml +++ b/cat-consumer/src/test/resources/com/dianping/cat/consumer/state/StateAnalyzerTest.xml @@ -1,9 +1,10 @@ + com.dianping.cat.report.ReportManager state - com.dianping.cat.consumer.state.Configurator$MockStateReportManager + com.dianping.cat.consumer.state.StateAnalyzerTestConfigurator$MockStateReportManager com.dianping.cat.report.ReportDelegate @@ -14,25 +15,34 @@ com.dianping.cat.report.ReportDelegate state - com.dianping.cat.consumer.state.Configurator$ExtendedStateDelegate + com.dianping.cat.consumer.state.StateAnalyzerTestConfigurator$ExtendedStateDelegate + + + com.dianping.cat.task.TaskManager + + + com.dianping.cat.report.ReportBucketManager + + com.dianping.cat.analysis.MessageAnalyzer state com.dianping.cat.consumer.state.StateAnalyzer - - 192.168.1.1 - + per-lookup com.dianping.cat.report.ReportManager state - com.dianping.cat.config.server.ServerConfigManager + com.dianping.cat.statistic.ServerStatisticManager - com.dianping.cat.statistic.ServerStatisticManager + com.dianping.cat.config.server.ServerFilterConfigManager + + + com.dianping.cat.config.server.ServerConfigManager diff --git a/cat-home/src/test/java/com/dianping/cat/TestServer.java b/cat-home/src/test/java/com/dianping/cat/TestServer.java index dce0cac91399f3504390e285612d4600c315fe73..22281bd8b1ee7639fc4157f71a1113ff424b06f5 100644 --- a/cat-home/src/test/java/com/dianping/cat/TestServer.java +++ b/cat-home/src/test/java/com/dianping/cat/TestServer.java @@ -1,5 +1,10 @@ package com.dianping.cat; +import java.util.EnumSet; + +import javax.servlet.DispatcherType; + +import org.eclipse.jetty.servlets.GzipFilter; import org.eclipse.jetty.webapp.WebAppContext; import org.junit.Test; import org.junit.runner.RunWith; @@ -10,7 +15,6 @@ import org.unidal.test.jetty.JettyServer; public class TestServer extends JettyServer { public static void main(String[] args) throws Exception { TestServer server = new TestServer(); - System.setProperty("devMode", "true"); server.startServer(); server.startWebApp(); server.stopServer(); @@ -28,7 +32,7 @@ public class TestServer extends JettyServer { @Override protected void postConfigure(WebAppContext context) { - //context.addFilter(GzipFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)); + context.addFilter(GzipFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)); } @Test