提交 bcf7164a 编写于 作者: A ainilife

Add merge test for ProblemReport and StateReport

上级 a34735f9
......@@ -15,8 +15,10 @@ import com.dianping.cat.consumer.heartbeat.HeartbeatAnalyzerTest;
import com.dianping.cat.consumer.problem.ProblemAnalyzerTest;
import com.dianping.cat.consumer.problem.ProblemHandlerTest;
import com.dianping.cat.consumer.problem.ProblemReportAggregationTest;
import com.dianping.cat.consumer.problem.ProblemReportMergerTest;
import com.dianping.cat.consumer.problem.ProblemReportTest;
import com.dianping.cat.consumer.state.StateAnalyzerTest;
import com.dianping.cat.consumer.state.StateReportMergerTest;
import com.dianping.cat.consumer.top.TopAnalyzerTest;
import com.dianping.cat.consumer.transaction.TransactionAnalyzerTest;
import com.dianping.cat.consumer.transaction.TransactionReportFilterTest;
......@@ -57,6 +59,8 @@ HeartbeatAnalyzerTest.class,
/* state */
StateAnalyzerTest.class,
StateReportMergerTest.class,
/* top */
TopAnalyzerTest.class,
......@@ -69,6 +73,8 @@ ProblemReportTest.class,
ProblemAnalyzerTest.class,
ProblemReportMergerTest.class,
CompositeFormatTest.class,
DefaultFormatTest.class
......
package com.dianping.cat.consumer.problem;
import org.junit.Assert;
import org.junit.Test;
import org.unidal.webres.helper.Files;
import com.dianping.cat.consumer.problem.model.entity.ProblemReport;
import com.dianping.cat.consumer.problem.model.transform.DefaultSaxParser;
public class ProblemReportMergerTest {
@Test
public void testProblemReportMerge() throws Exception {
String oldXml = Files.forIO().readFrom(getClass().getResourceAsStream("ProblemReportOld.xml"), "utf-8");
String newXml = Files.forIO().readFrom(getClass().getResourceAsStream("ProblemReportNew.xml"), "utf-8");
ProblemReport reportOld = DefaultSaxParser.parse(oldXml);
ProblemReport reportNew = DefaultSaxParser.parse(newXml);
String expected = Files.forIO().readFrom(getClass().getResourceAsStream("ProblemReportMergeResult.xml"), "utf-8");
ProblemReportMerger merger = new ProblemReportMerger(new ProblemReport(reportOld.getDomain()));
reportOld.accept(merger);
reportNew.accept(merger);
Assert.assertEquals("Check the merge result!", expected.replace("\r", ""), merger.getProblemReport().toString()
.replace("\r", ""));
Assert.assertEquals("Source report is changed!", newXml.replace("\r", ""), reportNew.toString().replace("\r", ""));
}
}
package com.dianping.cat.consumer.state;
import org.junit.Assert;
import org.junit.Test;
import org.unidal.webres.helper.Files;
import com.dianping.cat.consumer.state.model.entity.StateReport;
import com.dianping.cat.consumer.state.model.transform.DefaultSaxParser;
public class StateReportMergerTest {
@Test
public void testStateReportMerge() throws Exception {
String oldXml = Files.forIO().readFrom(getClass().getResourceAsStream("old.xml"), "utf-8");
String newXml = Files.forIO().readFrom(getClass().getResourceAsStream("new.xml"), "utf-8");
StateReport reportOld = DefaultSaxParser.parse(oldXml);
StateReport reportNew = DefaultSaxParser.parse(newXml);
String expected = Files.forIO()
.readFrom(getClass().getResourceAsStream("result.xml"), "utf-8");
StateReportMerger merger = new StateReportMerger(new StateReport(reportOld.getDomain()));
reportOld.accept(merger);
reportNew.accept(merger);
Assert.assertEquals("Check the merge result!", expected.replaceAll("\r", ""), merger.getStateReport()
.toString().replaceAll("\r", ""));
}
}
<?xml version="1.0" encoding="utf-8"?>
<problem-report domain="Cat" startTime="2012-06-26 16:00:00" endTime="2012-06-26 16:59:59">
<domain>Cat</domain>
<ip>192.168.165.1</ip>
<machine ip="192.168.165.1">
<entry type="heartbeat" status="192.168.165.1">
<duration value="0" count="1">
<message>Cat-c0a8a501-1340700793104-0</message>
</duration>
<thread group-name="Cat" name="Cat-StatusUpdateTask" id="27">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700793104-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="home">
<duration value="50" count="1">
<message>Cat-c0a8a501-1340700793743-0</message>
</duration>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700793743-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="p">
<duration value="50" count="8">
<message>Cat-c0a8a501-1340700795112-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799949-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800040-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</duration>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700795112-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799949-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799945-1</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700800040-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
</entry>
<entry type="url" status="p">
<duration value="0" count="10">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800046-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
<message>Cat-c0a8a501-1340700802937-0</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700802937-0</message>
</segment>
</thread>
</entry>
<entry type="failure" status="MVC:OutboundPhase">
<duration value="0" count="10">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800046-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
<message>Cat-c0a8a501-1340700802937-0</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700802937-0</message>
</segment>
</thread>
</entry>
<entry type="error" status="java.lang.RuntimeException">
<duration value="0" count="10">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800046-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
<message>Cat-c0a8a501-1340700802937-0</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700802937-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="t">
<duration value="50" count="2">
<message>Cat-c0a8a501-1340700805433-0</message>
<message>Cat-c0a8a501-1340700808403-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700805433-0</message>
<message>Cat-c0a8a501-1340700808403-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="model">
<duration value="50" count="2">
<message>Cat-c0a8a501-1340700810278-0</message>
<message>Cat-c0a8a501-1340700810277-0</message>
</duration>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810278-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-7" id="41">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810277-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="m">
<duration value="50" count="1">
<message>Cat-c0a8a501-1340700810268-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810268-0</message>
</segment>
<segment id="54" count="1">
<message>Cat-c0a8a501-1340700810268-0</message>
</segment>
</thread>
</entry>
</machine>
</problem-report>
<?xml version="1.0" encoding="utf-8"?>
<problem-report domain="Cat" startTime="2012-06-26 16:00:00" endTime="2012-06-26 16:59:59">
<domain>Cat</domain>
<ip>192.168.165.1</ip>
<machine ip="192.168.165.1">
<entry type="heartbeat" status="192.168.165.1">
<duration value="0" count="1">
<message>Cat-c0a8a501-1340700793104-0</message>
</duration>
<thread group-name="Cat" name="Cat-StatusUpdateTask" id="27">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700793104-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="home">
<duration value="50" count="1">
<message>Cat-c0a8a501-1340700793743-0</message>
</duration>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700793743-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="p">
<duration value="50" count="8">
<message>Cat-c0a8a501-1340700795112-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799949-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800040-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</duration>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700795112-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799949-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799945-1</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700800040-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
</entry>
<entry type="url" status="p">
<duration value="0" count="10">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800046-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
<message>Cat-c0a8a501-1340700802937-0</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700802937-0</message>
</segment>
</thread>
</entry>
<entry type="failure" status="MVC:OutboundPhase">
<duration value="0" count="10">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800046-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
<message>Cat-c0a8a501-1340700802937-0</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700802937-0</message>
</segment>
</thread>
</entry>
<entry type="error" status="java.lang.RuntimeException">
<duration value="0" count="10">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700799623-0</message>
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700799739-0</message>
<message>Cat-c0a8a501-1340700799941-0</message>
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700800046-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
<message>Cat-c0a8a501-1340700802937-0</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799568-0</message>
<message>Cat-c0a8a501-1340700800046-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-1" id="33">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799623-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-4" id="36">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799710-0</message>
<message>Cat-c0a8a501-1340700802944-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799739-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-6" id="38">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700799941-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-5" id="37">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700799945-1</message>
<message>Cat-c0a8a501-1340700803230-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-9" id="86">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700802937-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="t">
<duration value="50" count="2">
<message>Cat-c0a8a501-1340700805433-0</message>
<message>Cat-c0a8a501-1340700808403-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="2">
<message>Cat-c0a8a501-1340700805433-0</message>
<message>Cat-c0a8a501-1340700808403-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="model">
<duration value="50" count="2">
<message>Cat-c0a8a501-1340700810278-0</message>
<message>Cat-c0a8a501-1340700810277-0</message>
</duration>
<thread group-name="main" name="btpool0-3" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810278-0</message>
</segment>
</thread>
<thread group-name="main" name="btpool0-7" id="41">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810277-0</message>
</segment>
</thread>
</entry>
<entry type="long-url" status="m">
<duration value="50" count="1">
<message>Cat-c0a8a501-1340700810268-0</message>
</duration>
<thread group-name="main" name="btpool0-2" id="34">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810268-0</message>
</segment>
</thread>
<thread group-name="main1" name="btpool0-2" id="35">
<segment id="53" count="1">
<message>Cat-c0a8a501-1340700810268-0</message>
</segment>
</thread>
</entry>
</machine>
</problem-report>
<?xml version="1.0" encoding="utf-8"?>
<state-report domain="Cat" startTime="2012-11-22 23:00:00" endTime="2012-11-22 23:59:59">
<machine ip="192.168.66.125" total="240" totalLoss="10" maxTps="60.0" avgTps="4.0" blockTotal="2" blockLoss="1" blockTime="1" pigeonTimeError="4" networkTimeError="3" dump="240" dumpLoss="10" size="100.0" delaySum="100.0" delayAvg="50.0" delayCount="2">
<processDomains>
<processDomain name="Cat" total="0" totalLoss="0" size="0.0">
<ip>192.168.66.125</ip>
<ip>192.168.66.126</ip>
</processDomain>
<processDomain name="Cat1" total="0" totalLoss="0" size="0.0">
<ip>192.168.66.125</ip>
<ip>192.168.66.126</ip>
</processDomain>
</processDomains>
<message id="1353596880000" time="2012-11-22 23:08:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596940000" time="2012-11-22 23:09:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597000000" time="2012-11-22 23:10:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597060000" time="2012-11-22 23:11:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597120000" time="2012-11-22 23:12:00" total="280" totalLoss="0" dump="280" dumpLoss="0" size="334590.0" delaySum="21530533.0" delayCount="28" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597180000" time="2012-11-22 23:13:00" total="140" totalLoss="0" dump="140" dumpLoss="0" size="207310.0" delaySum="11034322.0" delayCount="14" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597240000" time="2012-11-22 23:14:00" total="10" totalLoss="0" dump="10" dumpLoss="0" size="87638.0" delaySum="874987.0" delayCount="1" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597300000" time="2012-11-22 23:15:00" total="40" totalLoss="0" dump="40" dumpLoss="0" size="114908.0" delaySum="3670934.0" delayCount="4" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597360000" time="2012-11-22 23:16:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597420000" time="2012-11-22 23:16:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597480000" time="2012-11-22 23:16:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
</machine>
<machine ip="192.168.66.126" total="240" totalLoss="0" maxTps="60.0" avgTps="4.0" blockTotal="2" blockLoss="1" blockTime="1" pigeonTimeError="4" networkTimeError="3" dump="240" dumpLoss="0" size="100.0" delaySum="100.0" delayAvg="50.0" delayCount="2">
<processDomains>
<processDomain name="Cat" total="0" totalLoss="0" size="0.0">
<ip>192.168.66.125</ip>
<ip>192.168.66.126</ip>
</processDomain>
<processDomain name="Cat2" total="0" totalLoss="0" size="0.0">
<ip>192.168.66.125</ip>
<ip>192.168.66.126</ip>
</processDomain>
</processDomains>
<message id="1353596400000" time="2012-11-22 23:00:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596460000" time="2012-11-22 23:01:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596520000" time="2012-11-22 23:02:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596580000" time="2012-11-22 23:03:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596640000" time="2012-11-22 23:04:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596700000" time="2012-11-22 23:05:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596760000" time="2012-11-22 23:06:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596820000" time="2012-11-22 23:07:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596880000" time="2012-11-22 23:08:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596940000" time="2012-11-22 23:09:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597000000" time="2012-11-22 23:10:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597060000" time="2012-11-22 23:11:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597120000" time="2012-11-22 23:12:00" total="280" totalLoss="0" dump="280" dumpLoss="0" size="334590.0" delaySum="21530533.0" delayCount="28" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597180000" time="2012-11-22 23:13:00" total="140" totalLoss="0" dump="140" dumpLoss="0" size="207310.0" delaySum="11034322.0" delayCount="14" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597240000" time="2012-11-22 23:14:00" total="10" totalLoss="0" dump="10" dumpLoss="0" size="87638.0" delaySum="874987.0" delayCount="1" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597300000" time="2012-11-22 23:15:00" total="40" totalLoss="0" dump="40" dumpLoss="0" size="114908.0" delaySum="3670934.0" delayCount="4" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597360000" time="2012-11-22 23:16:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
</machine>
</state-report>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<state-report domain="Cat" startTime="2012-11-22 23:00:00" endTime="2012-11-22 23:59:59">
<machine ip="192.168.66.125" total="240" totalLoss="0" maxTps="50.0" avgTps="4.0" blockTotal="2" blockLoss="1" blockTime="1" pigeonTimeError="4" networkTimeError="3" dump="240" dumpLoss="0" size="100.0" delaySum="100.0" delayAvg="50.0" delayCount="2">
<processDomains>
<processDomain name="Cat" total="0" totalLoss="0" size="0.0">
<ip>192.168.66.125</ip>
</processDomain>
</processDomains>
<message id="1353596400000" time="2012-11-22 23:00:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596460000" time="2012-11-22 23:01:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596520000" time="2012-11-22 23:02:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596580000" time="2012-11-22 23:03:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596640000" time="2012-11-22 23:04:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596700000" time="2012-11-22 23:05:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596760000" time="2012-11-22 23:06:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596820000" time="2012-11-22 23:07:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596880000" time="2012-11-22 23:08:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353596940000" time="2012-11-22 23:09:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597000000" time="2012-11-22 23:10:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597060000" time="2012-11-22 23:11:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597120000" time="2012-11-22 23:12:00" total="280" totalLoss="0" dump="280" dumpLoss="0" size="334590.0" delaySum="21530533.0" delayCount="28" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597180000" time="2012-11-22 23:13:00" total="140" totalLoss="0" dump="140" dumpLoss="0" size="207310.0" delaySum="11034322.0" delayCount="14" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597240000" time="2012-11-22 23:14:00" total="10" totalLoss="0" dump="10" dumpLoss="0" size="87638.0" delaySum="874987.0" delayCount="1" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597300000" time="2012-11-22 23:15:00" total="40" totalLoss="0" dump="40" dumpLoss="0" size="114908.0" delaySum="3670934.0" delayCount="4" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
<message id="1353597360000" time="2012-11-22 23:16:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
</machine>
</state-report>
......@@ -61,4 +61,3 @@
<message id="1353597360000" time="2012-11-22 23:16:00" total="0" totalLoss="0" dump="0" dumpLoss="0" size="0.0" delaySum="0.0" delayCount="0" pigeonTimeError="4" networkTimeError="3" blockTotal="2" blockLoss="1" blockTime="1"/>
</machine>
</state-report>
......@@ -14,22 +14,6 @@ import com.dianping.cat.consumer.problem.model.transform.DefaultSaxParser;
import com.dianping.cat.report.task.problem.HistoryProblemReportMerger;
public class ProblemReportMergerTest {
@Test
public void testProblemReportMerge() throws Exception {
String oldXml = Files.forIO().readFrom(getClass().getResourceAsStream("ProblemReportOld.xml"), "utf-8");
String newXml = Files.forIO().readFrom(getClass().getResourceAsStream("ProblemReportNew.xml"), "utf-8");
ProblemReport reportOld = DefaultSaxParser.parse(oldXml);
ProblemReport reportNew = DefaultSaxParser.parse(newXml);
String expected = Files.forIO().readFrom(getClass().getResourceAsStream("ProblemReportMergeResult.xml"), "utf-8");
ProblemReportMerger merger = new ProblemReportMerger(new ProblemReport(reportOld.getDomain()));
reportOld.accept(merger);
reportNew.accept(merger);
Assert.assertEquals("Check the merge result!", expected.replace("\r", ""), merger.getProblemReport().toString()
.replace("\r", ""));
Assert.assertEquals("Source report is changed!", newXml.replace("\r", ""), reportNew.toString().replace("\r", ""));
}
@Test
public void testProblemReportMergeAll() throws Exception {
......
......@@ -4,33 +4,11 @@ import org.junit.Assert;
import org.junit.Test;
import org.unidal.webres.helper.Files;
import com.dianping.cat.consumer.state.StateReportMerger;
import com.dianping.cat.consumer.state.model.entity.StateReport;
import com.dianping.cat.consumer.state.model.transform.DefaultSaxParser;
import com.dianping.cat.report.task.state.HistoryStateReportMerger;
public class StateReportMergerTest {
@Test
public void testStateReportMerge() throws Exception {
String oldXml = Files.forIO().readFrom(getClass().getResourceAsStream("old.xml"), "utf-8");
String newXml = Files.forIO().readFrom(getClass().getResourceAsStream("new.xml"), "utf-8");
StateReport reportOld = DefaultSaxParser.parse(oldXml);
StateReport reportNew = DefaultSaxParser.parse(newXml);
String expected = Files.forIO()
.readFrom(getClass().getResourceAsStream("result.xml"), "utf-8");
StateReportMerger merger = new StateReportMerger(new StateReport(reportOld.getDomain()));
reportOld.accept(merger);
reportNew.accept(merger);
Assert.assertEquals("Check the merge result!", expected.replaceAll("\\s*", ""), merger.getStateReport()
.toString().replaceAll("\\s*", ""));
Assert.assertEquals("Source report is changed!", newXml.replaceAll("\\s*", ""),
reportNew.toString().replaceAll("\\s*", ""));
Assert.assertEquals("Source report is changed!", oldXml.replaceAll("\\s*", ""),
reportOld.toString().replaceAll("\\s*", ""));
}
@Test
public void testHistoryStateReportMerge() throws Exception {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册