From 57cbab0799485c76959c4a9dd6b02a8e856e2963 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20Blu=CC=88mke?= <lbl@informatik.uni-kiel.de> Date: Wed, 13 Apr 2016 15:13:57 +0200 Subject: [PATCH] Test cases for GCDisplayFilter --- .../filter/sink/GCDisplayFilterTest.java | 58 +++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 src/test/java/kieker/analysis/plugin/filter/sink/GCDisplayFilterTest.java diff --git a/src/test/java/kieker/analysis/plugin/filter/sink/GCDisplayFilterTest.java b/src/test/java/kieker/analysis/plugin/filter/sink/GCDisplayFilterTest.java new file mode 100644 index 00000000..621a87bd --- /dev/null +++ b/src/test/java/kieker/analysis/plugin/filter/sink/GCDisplayFilterTest.java @@ -0,0 +1,58 @@ +package kieker.analysis.plugin.filter.sink; + +import static org.hamcrest.core.Is.is; +import static org.junit.Assert.assertThat; +import static teetime.framework.test.StageTester.test; + +import java.util.Date; +import java.util.concurrent.TimeUnit; + +import org.junit.Before; +import org.junit.Test; + +import kieker.common.record.jvm.GCRecord; + +/** + * Test cases for GCDisplayFilter + * + * @author Lars Erik Bluemke + */ +public class GCDisplayFilterTest { + + private GCRecord record; + private GCDisplayFilter gcDisplayFilter; + + private final int numberOfEntries = 3; + private final TimeUnit recordsTimeUnit = TimeUnit.MILLISECONDS; + + private final long timestamp = 1L; + private final String hostname = "test_host"; + private final String vmName = "test_vm"; + private final String gcName = "test_gc"; + private final long collectionCount = 2; + private final long collectionTimeMS = 3; + + @Before + public void initializeGCDisplayFilter() { + record = new GCRecord(timestamp, hostname, vmName, gcName, collectionCount, collectionTimeMS); + gcDisplayFilter = new GCDisplayFilter(numberOfEntries, recordsTimeUnit); + } + + @Test + public void xyPlotEntriesShouldBeCorrect() { + test(gcDisplayFilter).and().send(record).to(gcDisplayFilter.getInputPort()).start(); + + final Date date = new Date(TimeUnit.MILLISECONDS.convert(record.getLoggingTimestamp(), recordsTimeUnit)); + final String minutesAndSeconds = date.toString().substring(14, 19); + + final String id = record.getHostname() + " - " + record.getVmName() + " - " + record.getGcName(); + + long actualCollectionCount = (long) gcDisplayFilter.getXYPlot().getEntries(id + " - " + "Collection Count").get(minutesAndSeconds); + long actualCollectionTime = (long) gcDisplayFilter.getXYPlot().getEntries(id + " - " + "Collection Time").get(minutesAndSeconds); + + assertThat(actualCollectionCount, is(collectionCount)); + assertThat(actualCollectionTime, is(collectionTimeMS)); + + } + +} -- GitLab