提交 ddfa9221 编写于 作者: F Frankie Wu

fix test failures

上级 dd07c6a9
...@@ -16,8 +16,6 @@ import javax.servlet.http.HttpServletRequest; ...@@ -16,8 +16,6 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.eclipse.jetty.webapp.WebAppContext; import org.eclipse.jetty.webapp.WebAppContext;
import org.junit.After;
import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.unidal.helper.Files; import org.unidal.helper.Files;
import org.unidal.helper.Joiners; import org.unidal.helper.Joiners;
...@@ -31,17 +29,6 @@ import com.dianping.cat.message.Transaction; ...@@ -31,17 +29,6 @@ import com.dianping.cat.message.Transaction;
import junit.framework.Assert; import junit.framework.Assert;
public class CatFilterTest extends JettyServer { 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 @Override
protected String getContextPath() { protected String getContextPath() {
return "/mock"; return "/mock";
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<config mode="client" enabled="true" dev-mode="false" xmlns:xsi="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="config.xsd"> <config mode="client" enabled="true" dev-mode="false" xmlns:xsi="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="config.xsd">
<base-log-dir>target/catlog</base-log-dir> <base-log-dir>target/cat</base-log-dir>
<servers> <servers>
<server ip="192.168.8.21" port="2280" http-port="8080" enabled="true"/> <server ip="192.168.8.21" port="2280" http-port="8080" enabled="true"/>
<server ip="192.168.8.22" port="2281" http-port="8080" enabled="false"/> <server ip="192.168.8.22" port="2281" http-port="8080" enabled="false"/>
......
...@@ -6,11 +6,13 @@ import java.util.Map.Entry; ...@@ -6,11 +6,13 @@ import java.util.Map.Entry;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import org.unidal.lookup.annotation.Named;
import org.unidal.lookup.logging.LogEnabled; import org.unidal.lookup.logging.LogEnabled;
import org.unidal.lookup.logging.Logger; import org.unidal.lookup.logging.Logger;
import com.dianping.cat.Constants; import com.dianping.cat.Constants;
import com.dianping.cat.analysis.AbstractMessageAnalyzer; import com.dianping.cat.analysis.AbstractMessageAnalyzer;
import com.dianping.cat.analysis.MessageAnalyzer;
import com.dianping.cat.config.server.ServerFilterConfigManager; import com.dianping.cat.config.server.ServerFilterConfigManager;
import com.dianping.cat.configuration.NetworkInterfaceManager; import com.dianping.cat.configuration.NetworkInterfaceManager;
import com.dianping.cat.consumer.state.model.entity.Detail; import com.dianping.cat.consumer.state.model.entity.Detail;
...@@ -19,11 +21,12 @@ import com.dianping.cat.consumer.state.model.entity.Message; ...@@ -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.ProcessDomain;
import com.dianping.cat.consumer.state.model.entity.StateReport; import com.dianping.cat.consumer.state.model.entity.StateReport;
import com.dianping.cat.message.spi.MessageTree; 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.DefaultReportManager.StoragePolicy;
import com.dianping.cat.report.ReportManager;
import com.dianping.cat.statistic.ServerStatistic.Statistic; import com.dianping.cat.statistic.ServerStatistic.Statistic;
import com.dianping.cat.statistic.ServerStatisticManager; import com.dianping.cat.statistic.ServerStatisticManager;
@Named(type = MessageAnalyzer.class, value = StateAnalyzer.ID, instantiationStrategy = Named.PER_LOOKUP)
public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implements LogEnabled { public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implements LogEnabled {
public static final String ID = "state"; public static final String ID = "state";
...@@ -36,7 +39,6 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen ...@@ -36,7 +39,6 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen
@Inject @Inject
private ServerFilterConfigManager m_serverFilterConfigManager; private ServerFilterConfigManager m_serverFilterConfigManager;
@Inject
private String m_ip = NetworkInterfaceManager.INSTANCE.getLocalHostAddress(); private String m_ip = NetworkInterfaceManager.INSTANCE.getLocalHostAddress();
private Machine buildStateInfo(Machine machine) { private Machine buildStateInfo(Machine machine) {
...@@ -209,4 +211,8 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen ...@@ -209,4 +211,8 @@ public class StateAnalyzer extends AbstractMessageAnalyzer<StateReport> implemen
machine.findOrCreateProcessDomain(domain).addIp(ip); machine.findOrCreateProcessDomain(domain).addIp(ip);
} }
} }
public void setIp(String ip) {
m_ip = ip;
}
} }
...@@ -30,7 +30,7 @@ public class StateAnalyzerTest extends ComponentTestCase { ...@@ -30,7 +30,7 @@ public class StateAnalyzerTest extends ComponentTestCase {
Date date = sdf.parse("20120101 00:00:00:00"); Date date = sdf.parse("20120101 00:00:00:00");
m_analyzer = (StateAnalyzer) lookup(MessageAnalyzer.class, StateAnalyzer.ID); 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); m_analyzer.initialize(date.getTime(), Constants.HOUR, Constants.MINUTE * 5);
} }
......
...@@ -4,50 +4,50 @@ import java.util.ArrayList; ...@@ -4,50 +4,50 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
import org.unidal.lookup.annotation.Inject; import org.unidal.lookup.annotation.Inject;
import org.unidal.lookup.annotation.Named;
import org.unidal.lookup.configuration.AbstractResourceConfigurator; import org.unidal.lookup.configuration.AbstractResourceConfigurator;
import org.unidal.lookup.configuration.Component; import org.unidal.lookup.configuration.Component;
import com.dianping.cat.Constants; 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.MockReportManager;
import com.dianping.cat.consumer.state.model.entity.StateReport; import com.dianping.cat.consumer.state.model.entity.StateReport;
import com.dianping.cat.report.ReportDelegate; import com.dianping.cat.report.ReportDelegate;
import com.dianping.cat.report.ReportManager; 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) { public static void main(String[] args) {
generatePlexusComponentsXmlFile(new Configurator()); generatePlexusComponentsXmlFile(new StateAnalyzerTestConfigurator());
}
protected Class<?> getTestClass() {
return StateAnalyzerTest.class;
} }
@Override @Override
public List<Component> defineComponents() { public List<Component> defineComponents() {
List<Component> all = new ArrayList<Component>(); List<Component> all = new ArrayList<Component>();
final String ID = StateAnalyzer.ID;
all.add(C(ReportManager.class, ID, MockStateReportManager.class)// all.add(A(MockStateReportManager.class));
.req(ReportDelegate.class, ID)); all.add(A(ExtendedStateDelegate.class));
all.add(C(ReportDelegate.class, ID, ExtendedStateDelegate.class)); all.add(A(StateAnalyzer.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")));
return all; return all;
} }
protected Class<?> getTestClass() {
return StateAnalyzerTest.class;
}
@Named(type = ReportDelegate.class, value = StateAnalyzer.ID)
public static class ExtendedStateDelegate extends StateDelegate { public static class ExtendedStateDelegate extends StateDelegate {
} }
@Named(type = ReportManager.class, value = StateAnalyzer.ID)
public static class MockStateReportManager extends MockReportManager<StateReport> { public static class MockStateReportManager extends MockReportManager<StateReport> {
@Inject(StateAnalyzer.ID)
private ReportDelegate<StateReport> m_delegate;
private StateReport m_report; private StateReport m_report;
@Inject @Override
private ReportDelegate<StateReport> m_delegate; public void destory() {
}
@Override @Override
public StateReport getHourlyReport(long startTime, String domain, boolean createIfNotExist) { public StateReport getHourlyReport(long startTime, String domain, boolean createIfNotExist) {
...@@ -57,10 +57,5 @@ public class Configurator extends AbstractResourceConfigurator { ...@@ -57,10 +57,5 @@ public class Configurator extends AbstractResourceConfigurator {
return m_report; return m_report;
} }
@Override
public void destory() {
}
} }
} }
<?xml version="1.0" encoding="utf-8"?>
<plexus> <plexus>
<components> <components>
<component> <component>
<role>com.dianping.cat.report.ReportManager</role> <role>com.dianping.cat.report.ReportManager</role>
<role-hint>state</role-hint> <role-hint>state</role-hint>
<implementation>com.dianping.cat.consumer.state.Configurator$MockStateReportManager</implementation> <implementation>com.dianping.cat.consumer.state.StateAnalyzerTestConfigurator$MockStateReportManager</implementation>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.ReportDelegate</role> <role>com.dianping.cat.report.ReportDelegate</role>
...@@ -14,25 +15,34 @@ ...@@ -14,25 +15,34 @@
<component> <component>
<role>com.dianping.cat.report.ReportDelegate</role> <role>com.dianping.cat.report.ReportDelegate</role>
<role-hint>state</role-hint> <role-hint>state</role-hint>
<implementation>com.dianping.cat.consumer.state.Configurator$ExtendedStateDelegate</implementation> <implementation>com.dianping.cat.consumer.state.StateAnalyzerTestConfigurator$ExtendedStateDelegate</implementation>
<requirements>
<requirement>
<role>com.dianping.cat.task.TaskManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.report.ReportBucketManager</role>
</requirement>
</requirements>
</component> </component>
<component> <component>
<role>com.dianping.cat.analysis.MessageAnalyzer</role> <role>com.dianping.cat.analysis.MessageAnalyzer</role>
<role-hint>state</role-hint> <role-hint>state</role-hint>
<implementation>com.dianping.cat.consumer.state.StateAnalyzer</implementation> <implementation>com.dianping.cat.consumer.state.StateAnalyzer</implementation>
<configuration> <instantiation-strategy>per-lookup</instantiation-strategy>
<m_ip>192.168.1.1</m_ip>
</configuration>
<requirements> <requirements>
<requirement> <requirement>
<role>com.dianping.cat.report.ReportManager</role> <role>com.dianping.cat.report.ReportManager</role>
<role-hint>state</role-hint> <role-hint>state</role-hint>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.config.server.ServerConfigManager</role> <role>com.dianping.cat.statistic.ServerStatisticManager</role>
</requirement> </requirement>
<requirement> <requirement>
<role>com.dianping.cat.statistic.ServerStatisticManager</role> <role>com.dianping.cat.config.server.ServerFilterConfigManager</role>
</requirement>
<requirement>
<role>com.dianping.cat.config.server.ServerConfigManager</role>
</requirement> </requirement>
</requirements> </requirements>
</component> </component>
......
package com.dianping.cat; 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.eclipse.jetty.webapp.WebAppContext;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
...@@ -10,7 +15,6 @@ import org.unidal.test.jetty.JettyServer; ...@@ -10,7 +15,6 @@ import org.unidal.test.jetty.JettyServer;
public class TestServer extends JettyServer { public class TestServer extends JettyServer {
public static void main(String[] args) throws Exception { public static void main(String[] args) throws Exception {
TestServer server = new TestServer(); TestServer server = new TestServer();
System.setProperty("devMode", "true");
server.startServer(); server.startServer();
server.startWebApp(); server.startWebApp();
server.stopServer(); server.stopServer();
...@@ -28,7 +32,7 @@ public class TestServer extends JettyServer { ...@@ -28,7 +32,7 @@ public class TestServer extends JettyServer {
@Override @Override
protected void postConfigure(WebAppContext context) { protected void postConfigure(WebAppContext context) {
//context.addFilter(GzipFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST)); context.addFilter(GzipFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST));
} }
@Test @Test
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册