package org.radargun.reporting.html; import java.util.Arrays; import java.util.HashMap; import java.util.Map; import org.radargun.config.Cluster; import org.radargun.reporting.Timeline; import org.radargun.reporting.html.HtmlReporter; import org.radargun.reporting.html.TimelineDocument; import org.radargun.utils.TimeService; import org.testng.annotations.Test; /** * Writes a basic {@link TimelineDocument} with few charts. * * @author Radim Vansa <rvansa@redhat.com> */ public class TimelineChartsTest { @Test public void test() { long now = TimeService.currentTimeMillis(); Timeline t0 = new Timeline(0); Timeline t1 = new Timeline(1); t0.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 1000, 10)); t0.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 2000, 5)); t0.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 3000, 8)); t0.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 4000, 12)); t1.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 1000, 13)); t1.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 2000, 15)); t1.addValue(Timeline.Category.sysCategory("Category A"), new Timeline.Value(now + 4000, 5)); t0.addEvent("Category B", new Timeline.TextEvent(now + 800, "Started")); t0.addEvent("Category B", new Timeline.IntervalEvent(now + 1500, "Stage one", 1000)); t0.addEvent("Category B", new Timeline.IntervalEvent(now + 2600, "Stage two", 1500)); t1.addEvent("Category B", new Timeline.TextEvent(now + 900, "Started")); t1.addEvent("Category B", new Timeline.IntervalEvent(now + 1400, "Stage one", 1100)); t1.addEvent("Category B", new Timeline.IntervalEvent(now + 2700, "Stage two", 1600)); t0.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 1000, 600)); t0.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 2500, 800)); t0.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 3100, 2000)); t0.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 4000, 1200)); t1.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 1200, 513)); t1.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 2100, 912)); t1.addValue(Timeline.Category.sysCategory("Category C"), new Timeline.Value(now + 3800, 485)); Cluster cluster = new Cluster(); cluster.addGroup("default", 2); TimelineDocument timelineDocument = new TimelineDocument(new TimelineDocument.Configuration(), "test", "testconfig", "Test Config", Arrays.asList(t0, t1), Timeline.Category.Type.SYSMONITOR, cluster); timelineDocument.createReportDirectory(); timelineDocument.createTestCharts(); Map root = new HashMap(); root.put("timelineDocument", timelineDocument); HtmlReporter.processTemplate(root, timelineDocument.getDirectory(), timelineDocument.getFileName(), "timelineReport.ftl"); } }