提交 24ce16ce 编写于 作者: A ainilife

add unit test for haerbeat report merger

上级 f84b87e7
......@@ -51,8 +51,6 @@ public class HttpABTestEntityRepository extends ContainerHolder implements ABTes
private FieldInjecter m_fieldInjector = new FieldInjecter();
private ScriptEngineManager m_mgr;
private ScriptEngine m_engine;
private String m_domain;
......@@ -78,7 +76,8 @@ public class HttpABTestEntityRepository extends ContainerHolder implements ABTes
@Override
public void initialize() throws InitializationException {
m_domain = m_configManager.getDomain().getId();
m_mgr = new ScriptEngineManager();
ScriptEngineManager m_mgr = new ScriptEngineManager();
m_engine = m_mgr.getEngineByExtension("java");
}
......
package com.dianping.cat.consumer.heartbeat;
import org.junit.Assert;
import org.junit.Test;
import org.unidal.webres.helper.Files;
import com.dianping.cat.consumer.heartbeat.model.entity.HeartbeatReport;
import com.dianping.cat.consumer.heartbeat.model.transform.DefaultSaxParser;
public class HeartbeatReportMergerTest {
@Test
public void testHaertbeatReportMerge() throws Exception {
String oldXml = Files.forIO().readFrom(getClass().getResourceAsStream("heartbeat_analyzer.xml"), "utf-8");
String newXml = Files.forIO().readFrom(getClass().getResourceAsStream("heartbeat_analyzer.xml"), "utf-8");
HeartbeatReport reportOld = DefaultSaxParser.parse(oldXml);
HeartbeatReport reportNew = DefaultSaxParser.parse(newXml);
String expected = Files.forIO().readFrom(getClass().getResourceAsStream("heartbeat_analyzer_merge.xml"), "utf-8");
HeartbeatReportMerger merger = new HeartbeatReportMerger(new HeartbeatReport(reportOld.getDomain()));
reportOld.accept(merger);
reportNew.accept(merger);
Assert.assertEquals("Source report is changed!", newXml.replace("\r", ""), reportNew.toString().replace("\r", ""));
Assert.assertEquals("Source report is changed!", oldXml.replace("\r", ""), reportOld.toString().replace("\r", ""));
Assert.assertEquals("Check the merge result!", expected.replace("\r", ""), merger.getHeartbeatReport().toString()
.replace("\r", ""));
}
}
<?xml version="1.0" encoding="utf-8"?>
<heartbeat-report domain="group" startTime="2012-01-01 00:00:00" endTime="2012-01-01 00:59:59">
<domain>group</domain>
<ip>192.168.1.1</ip>
<machine ip="192.168.1.1">
<period minute="0" thread-count="19" daemon-count="15" total-started-count="19" cat-thread-count="10" pigeon-thread-count="0" http-thread-count="2" new-gc-count="5" old-gc-count="0" memory-free="77133416" heap-usage="7866776" none-heap-usage="20057416" system-load-average="3.24" cat-message-produced="3" cat-message-overflow="0" cat-message-size="2550.00">
<disk path="/" total="120473067520" free="57517744128" usable="57255600128"/>
<disk path="/data" total="120473067520" free="57517744128" usable="57255600128"/>
</period>
</machine>
</heartbeat-report>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册