Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'systemtap/org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests/src/org/eclipse/linuxtools/systemtap/ui/graphingapi/nonui/tests/filters/UniqueFilterTest.java')
-rw-r--r--systemtap/org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests/src/org/eclipse/linuxtools/systemtap/ui/graphingapi/nonui/tests/filters/UniqueFilterTest.java93
1 files changed, 93 insertions, 0 deletions
diff --git a/systemtap/org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests/src/org/eclipse/linuxtools/systemtap/ui/graphingapi/nonui/tests/filters/UniqueFilterTest.java b/systemtap/org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests/src/org/eclipse/linuxtools/systemtap/ui/graphingapi/nonui/tests/filters/UniqueFilterTest.java
new file mode 100644
index 0000000000..3cd62d11c8
--- /dev/null
+++ b/systemtap/org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests/src/org/eclipse/linuxtools/systemtap/ui/graphingapi/nonui/tests/filters/UniqueFilterTest.java
@@ -0,0 +1,93 @@
+/*******************************************************************************
+ * Copyright (c) 2006 IBM Corporation.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - Jeff Briggs, Henry Hughes, Ryan Morse
+ *******************************************************************************/
+
+package org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests.filters;
+
+import java.util.ArrayList;
+
+import org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.aggregates.MaxAggregate;
+import org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.aggregates.SumAggregate;
+import org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.filters.UniqueFilter;
+import org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests.MockDataSet;
+import org.eclipse.ui.XMLMemento;
+
+
+import junit.framework.TestCase;
+
+public class UniqueFilterTest extends TestCase {
+ public UniqueFilterTest(String name) {
+ super(name);
+ }
+
+ protected void setUp() throws Exception {
+ super.setUp();
+
+ filter = new UniqueFilter(0, new SumAggregate(), 0);
+ }
+
+ public void testUniqueFilter() {
+ filter = new UniqueFilter(-1, new MaxAggregate(), 0);
+ assertNotNull(filter);
+ }
+
+ @SuppressWarnings("unchecked")
+ public void testFilter() {
+ int width = 4;
+ int height = 10;
+ int wrap = height / 3;
+ ArrayList[] data = MockDataSet.buildArray(width, height, wrap);
+
+ assertEquals(width, data.length);
+ assertEquals(height, data[0].size());
+
+ ArrayList[] data2 = filter.filter(data);
+
+ assertEquals(width, data.length);
+ assertEquals(height, data[0].size());
+ assertEquals(width, data2.length);
+ assertEquals(wrap, data2[0].size());
+ assertEquals("1", data2[0].get(0));
+ assertEquals("2", data2[0].get(1));
+ assertEquals("0", data2[0].get(2));
+
+ assertEquals(0, ((Number)data2[2].get(0)).intValue());
+ assertEquals(3, ((Number)data2[2].get(1)).intValue());
+ assertEquals(8, ((Number)data2[2].get(2)).intValue());
+
+ filter = new UniqueFilter(-1, new SumAggregate(), 0);
+ assertNull(filter.filter(null));
+
+ data = new ArrayList[2];
+ data[0] = new ArrayList();
+ data[1] = new ArrayList();
+
+ data[0].add("a");
+ data[0].add("a");
+ data[1].add("b");
+ data[1].add("c");
+ filter = new UniqueFilter(0, new SumAggregate(), 0);
+ assertNotNull(filter.filter(data));
+ }
+
+ public void testGetID() {
+ assertTrue(UniqueFilter.ID.equals(filter.getID()));
+ }
+
+ public void testWriteXML() {
+ filter.writeXML(XMLMemento.createWriteRoot("test"));
+ }
+
+ protected void tearDown() throws Exception {
+ super.tearDown();
+ filter = null;
+ }
+ UniqueFilter filter;
+}

Back to the top