1
/*******************************************************************************
2
* Copyright (c) 2006 IBM Corporation.
3
* All rights reserved. This program and the accompanying materials
4
* are made available under the terms of the Eclipse Public License v1.0
5
* which accompanies this distribution, and is available at
6
* http://www.eclipse.org/legal/epl-v10.html
9
* IBM Corporation - Jeff Briggs, Henry Hughes, Ryan Morse
10
*******************************************************************************/
12
package org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests.filters;
14
import java.util.ArrayList;
16
import org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.filters.RangeFilter;
17
import org.eclipse.linuxtools.systemtap.ui.graphingapi.nonui.tests.MockDataSet;
18
import org.eclipse.ui.XMLMemento;
21
import junit.framework.TestCase;
23
public class RangeFilterTest extends TestCase {
24
public RangeFilterTest(String name) {
28
protected void setUp() throws Exception {
30
filter = new RangeFilter(0, new Integer(1), new Integer(2), RangeFilter.INSIDE_BOUNDS | RangeFilter.INCLUSIVE);
33
public void testRangeFilter() {
34
RangeFilter filter = new RangeFilter(-1, new Integer(3), new Integer(5), RangeFilter.INSIDE_BOUNDS);
35
assertNotNull(filter);
38
public void testFilter() {
41
int wrap = height / 3;
42
ArrayList[] data = MockDataSet.buildArray(width, height, wrap);
44
assertEquals(width, data.length);
45
assertEquals(height, data[0].size());
46
ArrayList[] data2 = filter.filter(data);
48
assertEquals(width, data.length);
49
assertEquals(height, data[0].size());
50
assertEquals(width, data2.length);
51
assertEquals(6, data2[0].size());
52
assertEquals("1", data2[0].get(0));
53
assertEquals("2", data2[0].get(1));
54
assertEquals("1", data2[0].get(2));
55
assertEquals("2", data2[0].get(3));
57
assertEquals(data[2].get(1), data2[2].get(0));
58
assertEquals(data[2].get(2), data2[2].get(1));
59
assertEquals(data[2].get(4), data2[2].get(2));
60
assertEquals(data[2].get(5), data2[2].get(3));
63
filter = new RangeFilter(0, new Integer(0), new Integer(2), RangeFilter.INSIDE_BOUNDS);
64
data2 = filter.filter(data);
66
assertEquals(width, data.length);
67
assertEquals(height, data[0].size());
68
assertEquals(width, data2.length);
69
assertEquals(3, data2[0].size());
70
assertEquals("1", data2[0].get(0));
71
assertEquals("1", data2[0].get(1));
72
assertEquals("1", data2[0].get(2));
74
assertEquals(data[2].get(1), data2[2].get(0));
75
assertEquals(data[2].get(4), data2[2].get(1));
76
assertEquals(data[2].get(7), data2[2].get(2));
79
filter = new RangeFilter(0, new Integer(0), new Integer(2), RangeFilter.OUTSIDE_BOUNDS | RangeFilter.INCLUSIVE);
80
data2 = filter.filter(data);
82
assertEquals(width, data.length);
83
assertEquals(height, data[0].size());
84
assertEquals(width, data2.length);
85
assertEquals(7, data2[0].size());
86
assertEquals("0", data2[0].get(0));
87
assertEquals("2", data2[0].get(1));
88
assertEquals("0", data2[0].get(2));
89
assertEquals("2", data2[0].get(3));
91
assertEquals(data[2].get(0), data2[2].get(0));
92
assertEquals(data[2].get(2), data2[2].get(1));
93
assertEquals(data[2].get(3), data2[2].get(2));
94
assertEquals(data[2].get(5), data2[2].get(3));
97
filter = new RangeFilter(0, new Integer(0), new Integer(2), RangeFilter.INSIDE_BOUNDS);
98
data2 = filter.filter(data);
100
assertEquals(width, data.length);
101
assertEquals(height, data[0].size());
102
assertEquals(width, data2.length);
103
assertEquals(3, data2[0].size());
104
assertEquals("1", data2[0].get(0));
105
assertEquals("1", data2[0].get(1));
106
assertEquals("1", data2[0].get(2));
108
assertEquals(data[2].get(1), data2[2].get(0));
109
assertEquals(data[2].get(4), data2[2].get(1));
110
assertEquals(data[2].get(7), data2[2].get(2));
113
filter = new RangeFilter(0, new Integer(0), new Integer(2), RangeFilter.OUTSIDE_BOUNDS);
114
data2 = filter.filter(data);
116
assertEquals(width, data.length);
117
assertEquals(height, data[0].size());
118
assertEquals(width, data2.length);
119
assertEquals(0, data2[0].size());
122
filter = new RangeFilter(-1, new Integer(1), new Integer(3), 0);
123
assertNull(filter.filter(data));
126
public void testGetID() {
127
assertTrue(RangeFilter.ID.equals(filter.getID()));
130
public void testWriteXML() {
131
filter.writeXML(XMLMemento.createWriteRoot("test"));
134
protected void tearDown() throws Exception {