1 /*******************************************************************************
2 * Copyright (c) 2009, 2010 Ericsson
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
10 * Francois Chouinard - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.linuxtools
.tmf
.tests
.request
;
15 import junit
.framework
.TestCase
;
17 import org
.eclipse
.linuxtools
.tmf
.event
.TmfEvent
;
18 import org
.eclipse
.linuxtools
.tmf
.event
.TmfTimeRange
;
19 import org
.eclipse
.linuxtools
.tmf
.event
.TmfTimestamp
;
20 import org
.eclipse
.linuxtools
.tmf
.request
.TmfDataRequest
;
21 import org
.eclipse
.linuxtools
.tmf
.request
.TmfEventRequest
;
22 import org
.eclipse
.linuxtools
.tmf
.request
.TmfEventRequestStub
;
25 * <b><u>TmfEventRequestTest</u></b>
27 * Test suite for the TmfEventRequest class.
29 public class TmfEventRequestTest
extends TestCase
{
31 // ------------------------------------------------------------------------
33 // ------------------------------------------------------------------------
35 private static TmfTimeRange range1
= new TmfTimeRange(TmfTimeRange
.Eternity
);
36 private static TmfTimeRange range2
= new TmfTimeRange(new TmfTimestamp(), TmfTimestamp
.BigCrunch
);
38 private static TmfEventRequest
<TmfEvent
> fRequest1
;
39 private static TmfEventRequest
<TmfEvent
> fRequest1b
;
40 private static TmfEventRequest
<TmfEvent
> fRequest1c
;
41 private static TmfEventRequest
<TmfEvent
> fRequest2
;
42 private static TmfEventRequest
<TmfEvent
> fRequest3
;
43 private static TmfEventRequest
<TmfEvent
> fRequest4
;
45 private static int fRequestCount
;
47 // ------------------------------------------------------------------------
49 // ------------------------------------------------------------------------
51 public TmfEventRequestTest(String name
) {
56 protected void setUp() throws Exception
{
58 TmfDataRequest
.reset();
59 fRequest1
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range1
, 100, 200);
60 fRequest2
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range2
, 100, 200);
61 fRequest3
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range2
, 200, 200);
62 fRequest4
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range2
, 200, 300);
63 fRequest1b
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range1
, 100, 200);
64 fRequest1c
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range1
, 100, 200);
65 fRequestCount
= fRequest1c
.getRequestId() + 1;
69 protected void tearDown() throws Exception
{
73 private TmfEventRequest
<TmfEvent
> setupTestRequest(final boolean[] flags
) {
75 TmfEventRequest
<TmfEvent
> request
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, new TmfTimeRange(TmfTimeRange
.Eternity
), 100, 200) {
77 public void handleCompleted() {
78 super.handleCompleted();
82 public void handleSuccess() {
83 super.handleSuccess();
87 public void handleFailure() {
88 super.handleFailure();
92 public void handleCancel() {
100 // ------------------------------------------------------------------------
102 // ------------------------------------------------------------------------
104 public void testTmfEventRequest() {
105 TmfEventRequest
<TmfEvent
> request
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class);
107 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
108 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
110 assertEquals("StartTime", TmfTimestamp
.BigBang
, request
.getRange().getStartTime());
111 assertEquals("EndTime", TmfTimestamp
.BigCrunch
, request
.getRange().getEndTime());
113 assertEquals("getIndex", 0, request
.getIndex());
114 assertEquals("getNbRequestedEvents", TmfDataRequest
.ALL_DATA
, request
.getNbRequested());
116 assertFalse("isCompleted", request
.isCompleted());
117 assertFalse("isFailed", request
.isFailed());
118 assertFalse("isCancelled", request
.isCancelled());
120 assertEquals("getNbRead", 0, request
.getNbRead());
123 public void testTmfEventRequestTimeRange() {
124 TmfTimeRange range
= new TmfTimeRange(new TmfTimestamp(), TmfTimestamp
.BigCrunch
);
125 TmfEventRequest
<TmfEvent
> request
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range
);
127 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
128 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
130 assertEquals("StartTime", new TmfTimestamp(), request
.getRange().getStartTime());
131 assertEquals("EndTime", TmfTimestamp
.BigCrunch
, request
.getRange().getEndTime());
133 assertEquals("getIndex", 0, request
.getIndex());
134 assertEquals("getNbRequestedEvents", TmfDataRequest
.ALL_DATA
, request
.getNbRequested());
136 assertFalse("isCompleted", request
.isCompleted());
137 assertFalse("isFailed", request
.isFailed());
138 assertFalse("isCancelled", request
.isCancelled());
140 assertEquals("getNbRead", 0, request
.getNbRead());
143 public void testTmfEventRequestTimeRangeNbRequested() {
144 TmfTimeRange range
= new TmfTimeRange(new TmfTimestamp(), TmfTimestamp
.BigCrunch
);
145 TmfEventRequest
<TmfEvent
> request
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range
, 100);
147 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
148 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
150 assertEquals("StartTime", new TmfTimestamp(), request
.getRange().getStartTime());
151 assertEquals("EndTime", TmfTimestamp
.BigCrunch
, request
.getRange().getEndTime());
153 assertEquals("getIndex", 0, request
.getIndex());
154 assertEquals("getNbRequestedEvents", 100, request
.getNbRequested());
156 assertFalse("isCompleted", request
.isCompleted());
157 assertFalse("isFailed", request
.isFailed());
158 assertFalse("isCancelled", request
.isCancelled());
160 assertEquals("getNbRead", 0, request
.getNbRead());
163 public void testTmfEventRequestTimeRangeNbRequestedBlocksize() {
164 TmfTimeRange range
= new TmfTimeRange(new TmfTimestamp(), TmfTimestamp
.BigCrunch
);
165 TmfEventRequest
<TmfEvent
> request
= new TmfEventRequestStub
<TmfEvent
>(TmfEvent
.class, range
, 100, 200);
167 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
168 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
170 assertEquals("StartTime", new TmfTimestamp(), request
.getRange().getStartTime());
171 assertEquals("EndTime", TmfTimestamp
.BigCrunch
, request
.getRange().getEndTime());
173 assertEquals("getIndex", 0, request
.getIndex());
174 assertEquals("getNbRequestedEvents", 100, request
.getNbRequested());
176 assertFalse("isCompleted", request
.isCompleted());
177 assertFalse("isFailed", request
.isFailed());
178 assertFalse("isCancelled", request
.isCancelled());
180 assertEquals("getNbRead", 0, request
.getNbRead());
183 // ------------------------------------------------------------------------
185 // ------------------------------------------------------------------------
187 public void testEqualsReflexivity() throws Exception
{
188 assertTrue("equals", fRequest1
.equals(fRequest1
));
189 assertTrue("equals", fRequest2
.equals(fRequest2
));
191 assertFalse("equals", fRequest1
.equals(fRequest2
));
192 assertFalse("equals", fRequest2
.equals(fRequest1
));
195 public void testEqualsSymmetry() throws Exception
{
196 assertTrue("equals", fRequest1
.equals(fRequest1b
));
197 assertTrue("equals", fRequest1b
.equals(fRequest1
));
199 assertFalse("equals", fRequest1
.equals(fRequest3
));
200 assertFalse("equals", fRequest2
.equals(fRequest3
));
201 assertFalse("equals", fRequest3
.equals(fRequest1
));
202 assertFalse("equals", fRequest3
.equals(fRequest2
));
205 public void testEqualsTransivity() throws Exception
{
206 assertTrue("equals", fRequest1
.equals(fRequest1b
));
207 assertTrue("equals", fRequest1b
.equals(fRequest1c
));
208 assertTrue("equals", fRequest1
.equals(fRequest1c
));
211 public void testEqualsNull() throws Exception
{
212 assertFalse("equals", fRequest1
.equals(null));
213 assertFalse("equals", fRequest2
.equals(null));
216 // ------------------------------------------------------------------------
218 // ------------------------------------------------------------------------
220 public void testHashCode() throws Exception
{
221 assertTrue("hashCode", fRequest1
.hashCode() == fRequest1
.hashCode());
222 assertTrue("hashCode", fRequest2
.hashCode() == fRequest2
.hashCode());
223 assertTrue("hashCode", fRequest1
.hashCode() != fRequest2
.hashCode());
226 // ------------------------------------------------------------------------
228 // ------------------------------------------------------------------------
230 public void testToString() {
231 String expected1
= "[TmfEventRequest(0,TmfEvent," + range1
+ ",100)]";
232 String expected2
= "[TmfEventRequest(1,TmfEvent," + range2
+ ",100)]";
233 String expected3
= "[TmfEventRequest(2,TmfEvent," + range2
+ ",200)]";
234 String expected4
= "[TmfEventRequest(3,TmfEvent," + range2
+ ",200)]";
236 assertEquals("toString", expected1
, fRequest1
.toString());
237 assertEquals("toString", expected2
, fRequest2
.toString());
238 assertEquals("toString", expected3
, fRequest3
.toString());
239 assertEquals("toString", expected4
, fRequest4
.toString());
242 // ------------------------------------------------------------------------
244 // ------------------------------------------------------------------------
246 public void testDone() {
248 final boolean[] flags
= new boolean[4];
249 TmfEventRequest
<TmfEvent
> request
= setupTestRequest(flags
);
252 assertTrue ("isCompleted", request
.isCompleted());
253 assertFalse("isFailed", request
.isFailed());
254 assertFalse("isCancelled", request
.isCancelled());
256 assertTrue ("handleCompleted", flags
[0]);
257 assertTrue ("handleSuccess", flags
[1]);
258 assertFalse("handleFailure", flags
[2]);
259 assertFalse("handleCancel", flags
[3]);
262 // ------------------------------------------------------------------------
264 // ------------------------------------------------------------------------
266 public void testFail() {
268 final boolean[] flags
= new boolean[4];
269 TmfEventRequest
<TmfEvent
> request
= setupTestRequest(flags
);
272 assertTrue ("isCompleted", request
.isCompleted());
273 assertTrue ("isFailed", request
.isFailed());
274 assertFalse("isCancelled", request
.isCancelled());
276 assertTrue ("handleCompleted", flags
[0]);
277 assertFalse("handleSuccess", flags
[1]);
278 assertTrue ("handleFailure", flags
[2]);
279 assertFalse("handleCancel", flags
[3]);
282 // ------------------------------------------------------------------------
284 // ------------------------------------------------------------------------
286 public void testCancel() {
288 final boolean[] flags
= new boolean[4];
289 TmfEventRequest
<TmfEvent
> request
= setupTestRequest(flags
);
292 assertTrue ("isCompleted", request
.isCompleted());
293 assertFalse("isFailed", request
.isFailed());
294 assertTrue ("isCancelled", request
.isCancelled());
296 assertTrue ("handleCompleted", flags
[0]);
297 assertFalse("handleSuccess", flags
[1]);
298 assertFalse("handleFailure", flags
[2]);
299 assertTrue ("handleCancel", flags
[3]);
302 // ------------------------------------------------------------------------
304 // ------------------------------------------------------------------------
This page took 0.082905 seconds and 5 git commands to generate.