Add a trace filter to the set of event filters in TmfRequests
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.core.tests / src / org / eclipse / linuxtools / tmf / core / tests / request / TmfBlockFilterTest.java
CommitLineData
8584dc20
FC
1/*******************************************************************************
2 * Copyright (c) 2012 Ericsson
3 *
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
8 *
9 * Contributors:
10 * Francois Chouinard - Initial API and implementation
11 *******************************************************************************/
12
13package org.eclipse.linuxtools.tmf.core.tests.request;
14
15import junit.framework.TestCase;
16
17import org.eclipse.linuxtools.tmf.core.event.ITmfEvent;
18import org.eclipse.linuxtools.tmf.core.event.TmfEvent;
19import org.eclipse.linuxtools.tmf.core.request.ITmfRequest;
20import org.eclipse.linuxtools.tmf.core.request.TmfBlockFilter;
21import org.junit.Test;
22
23/**
24 * <b><u>TmfBlockFilterTest</u></b>
25 * <p>
26 * Test suite for the TmfBlockFilter class.
27 */
28@SuppressWarnings({"nls","javadoc"})
29public class TmfBlockFilterTest extends TestCase {
30
31 // ------------------------------------------------------------------------
32 // Constants
33 // ------------------------------------------------------------------------
34
35 private static final long ALL_EVENTS = ITmfRequest.ALL_EVENTS;
36
37 // ------------------------------------------------------------------------
38 // Housekeeping
39 // ------------------------------------------------------------------------
40
41 /**
42 * @param name the test name
43 */
44 public TmfBlockFilterTest(String name) {
45 super(name);
46 }
47
48 @Override
49 protected void setUp() throws Exception {
50 super.setUp();
51 }
52
53 @Override
54 protected void tearDown() throws Exception {
55 super.tearDown();
56 }
57
58 // ------------------------------------------------------------------------
59 // Constructors
60 // ------------------------------------------------------------------------
61
62 @Test
63 public void testTmfBlockFilter() {
64 TmfBlockFilter filter = TmfBlockFilter.ALL_EVENTS;
65 assertEquals("getStartIndex", 0, filter.getStartIndex());
66 assertEquals("getEndIndex", ALL_EVENTS, filter.getEndIndex());
67 assertEquals("getNbRequested", ALL_EVENTS, filter.getNbRequested());
68
69 filter = new TmfBlockFilter(0, 1000);
70 assertEquals("getStartIndex", 0, filter.getStartIndex());
71 assertEquals("getEndIndex", 1000, filter.getEndIndex());
72 assertEquals("getNbRequested", 1000, filter.getNbRequested());
73
74 filter = new TmfBlockFilter(-1, 1000);
75 assertEquals("getStartIndex", 0, filter.getStartIndex());
76 assertEquals("getEndIndex", 1000, filter.getEndIndex());
77 assertEquals("getNbRequested", 1000, filter.getNbRequested());
78
79 filter = new TmfBlockFilter(0, -1);
80 assertEquals("getStartIndex", 0, filter.getStartIndex());
81 assertEquals("getEndIndex", ALL_EVENTS, filter.getEndIndex());
82 assertEquals("getNbRequested", ALL_EVENTS, filter.getNbRequested());
83
84 filter = new TmfBlockFilter(1000, ALL_EVENTS);
85 assertEquals("getStartIndex", 1000, filter.getStartIndex());
86 assertEquals("getEndIndex", ALL_EVENTS, filter.getEndIndex());
87 assertEquals("getNbRequested", ALL_EVENTS, filter.getNbRequested());
88 }
89
90 @Test
91 public void testTmfBlockFilterCopy() {
92 TmfBlockFilter filter1 = new TmfBlockFilter(0, 1000);
93 TmfBlockFilter filter2 = new TmfBlockFilter(filter1);
94
95 assertEquals("getStartIndex", filter1.getStartIndex(), filter2.getStartIndex());
96 assertEquals("getEndIndex", filter1.getEndIndex(), filter2.getEndIndex());
97 assertEquals("getNbRequested", filter1.getNbRequested(), filter2.getNbRequested());
98 }
99
100 // ------------------------------------------------------------------------
101 // equals
102 // ------------------------------------------------------------------------
103
104 @Test
105 public void testEqualsReflexivity() {
106 TmfBlockFilter filter1 = new TmfBlockFilter( 0, 1000);
107 TmfBlockFilter filter2 = new TmfBlockFilter(10, 1000);
108
109 assertEquals("equals", filter1, filter1);
110 assertEquals("equals", filter2, filter2);
111
112 assertFalse("equals", filter1.equals(filter2));
113 assertFalse("equals", filter2.equals(filter1));
114 }
115
116 @Test
117 public void testEqualsSymmetry() {
118 TmfBlockFilter filter1 = new TmfBlockFilter( 0, 1000);
119 TmfBlockFilter filter2 = new TmfBlockFilter( 0, 1000);
120 TmfBlockFilter filter3 = new TmfBlockFilter(10, 1000);
121
122 assertEquals("equals", filter1, filter2);
123 assertEquals("equals", filter2, filter1);
124
125 assertFalse("equals", filter1.equals(filter3));
126 assertFalse("equals", filter3.equals(filter1));
127 }
128
129 @Test
130 public void testEqualsTransivity() {
131 TmfBlockFilter filter1 = new TmfBlockFilter(0, 1000);
132 TmfBlockFilter filter2 = new TmfBlockFilter(0, 1000);
133 TmfBlockFilter filter3 = new TmfBlockFilter(0, 1000);
134
135 assertEquals("equals", filter1, filter2);
136 assertEquals("equals", filter2, filter3);
137 assertEquals("equals", filter3, filter1);
138 }
139
140 @Test
141 public void testEqualsNull() {
142 TmfBlockFilter filter1 = new TmfBlockFilter( 0, 1000);
143 TmfBlockFilter filter2 = new TmfBlockFilter(10, 1000);
144
145 assertFalse("equals", filter1.equals(null));
146 assertFalse("equals", filter2.equals(null));
147 }
148
149 // ------------------------------------------------------------------------
150 // hashCode
151 // ------------------------------------------------------------------------
152
153 @Test
154 public void testHashCode() {
155 TmfBlockFilter filter1 = new TmfBlockFilter( 0, 1000);
156 TmfBlockFilter filter2 = new TmfBlockFilter(10, 1000);
157
8584dc20
FC
158 assertFalse("hashCode", filter1.hashCode() == filter2.hashCode());
159 }
160
161 // ------------------------------------------------------------------------
162 // toString
163 // ------------------------------------------------------------------------
164
165 @Test
166 public void testToString() {
167 TmfBlockFilter filter1 = new TmfBlockFilter( 0, 1000);
168 TmfBlockFilter filter2 = new TmfBlockFilter(10, 2000);
169
170 String expected0 = "TmfBlockFilter [fStartIndex=0, fEndIndex=" + Long.MAX_VALUE + ", fNbRequested=" + Long.MAX_VALUE + "]";
171 String expected1 = "TmfBlockFilter [fStartIndex=0, fEndIndex=1000, fNbRequested=1000]";
172 String expected2 = "TmfBlockFilter [fStartIndex=10, fEndIndex=2010, fNbRequested=2000]";
173
174 assertEquals("toString", expected0, TmfBlockFilter.ALL_EVENTS.toString());
175 assertEquals("toString", expected1, filter1.toString());
176 assertEquals("toString", expected2, filter2.toString());
177 }
178
179 // ------------------------------------------------------------------------
180 // matches
181 // ------------------------------------------------------------------------
182
183 /**
184 * The only test that really matters...
185 */
186 @Test
187 public void testMatches() {
188
189 TmfBlockFilter filter1 = new TmfBlockFilter( 0, 1000);
190 TmfBlockFilter filter2 = new TmfBlockFilter(10, 2000);
191
192 ITmfEvent event = new TmfEvent(null, 0, null, null, null, null, null);
193 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
194 assertTrue ("matches", filter1.matches(event));
195 assertFalse("matches", filter2.matches(event));
196
197 event = new TmfEvent(null, 5, null, null, null, null, null);
198 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
199 assertTrue ("matches", filter1.matches(event));
200 assertFalse("matches", filter2.matches(event));
201
202 event = new TmfEvent(null, 9, null, null, null, null, null);
203 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
204 assertTrue ("matches", filter1.matches(event));
205 assertFalse("matches", filter2.matches(event));
206
207 event = new TmfEvent(null, 10, null, null, null, null, null);
208 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
209 assertTrue ("matches", filter1.matches(event));
210 assertTrue ("matches", filter2.matches(event));
211
212 event = new TmfEvent(null, 999, null, null, null, null, null);
213 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
214 assertTrue ("matches", filter1.matches(event));
215 assertTrue ("matches", filter2.matches(event));
216
217 event = new TmfEvent(null, 1000, null, null, null, null, null);
218 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
219 assertFalse("matches", filter1.matches(event));
220 assertTrue ("matches", filter2.matches(event));
221
222 event = new TmfEvent(null, 1999, null, null, null, null, null);
223 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
224 assertFalse("matches", filter1.matches(event));
225 assertTrue ("matches", filter2.matches(event));
226
227 event = new TmfEvent(null, 2000, null, null, null, null, null);
228 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
229 assertFalse("matches", filter1.matches(event));
230 assertTrue ("matches", filter2.matches(event));
231
232 event = new TmfEvent(null, 2009, null, null, null, null, null);
233 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
234 assertFalse("matches", filter1.matches(event));
235 assertTrue ("matches", filter2.matches(event));
236
237 event = new TmfEvent(null, 2010, null, null, null, null, null);
238 assertTrue ("matches", TmfBlockFilter.ALL_EVENTS.matches(event));
239 assertFalse("matches", filter1.matches(event));
240 assertFalse("matches", filter2.matches(event));
241 }
242
243}
This page took 0.033077 seconds and 5 git commands to generate.