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
.request
.TmfDataRequest
;
19 import org
.eclipse
.linuxtools
.tmf
.request
.TmfDataRequestStub
;
22 * <b><u>TmfDataRequestTest</u></b>
24 * Test suite for the TmfDataRequest class.
26 public class TmfDataRequestTest
extends TestCase
{
28 // ------------------------------------------------------------------------
30 // ------------------------------------------------------------------------
32 private static TmfDataRequest
<TmfEvent
> fRequest1
;
33 private static TmfDataRequest
<TmfEvent
> fRequest1b
;
34 private static TmfDataRequest
<TmfEvent
> fRequest1c
;
35 private static TmfDataRequest
<TmfEvent
> fRequest2
;
36 private static TmfDataRequest
<TmfEvent
> fRequest3
;
37 private static TmfDataRequest
<TmfEvent
> fRequest4
;
39 private static int fRequestCount
;
41 // ------------------------------------------------------------------------
43 // ------------------------------------------------------------------------
45 public TmfDataRequestTest(String name
) {
50 protected void setUp() throws Exception
{
52 TmfDataRequest
.reset();
53 fRequest1
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10, 100, 200);
54 fRequest2
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 20, 100, 200);
55 fRequest3
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 20, 200, 200);
56 fRequest4
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 20, 200, 300);
57 fRequest1b
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10, 100, 200);
58 fRequest1c
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10, 100, 200);
59 fRequestCount
= fRequest1c
.getRequestId() + 1;
63 protected void tearDown() throws Exception
{
67 private TmfDataRequest
<TmfEvent
> setupTestRequest(final boolean[] flags
) {
69 TmfDataRequest
<TmfEvent
> request
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10, 100, 200) {
71 public void handleCompleted() {
72 super.handleCompleted();
76 public void handleSuccess() {
77 super.handleSuccess();
81 public void handleFailure() {
82 super.handleFailure();
86 public void handleCancel() {
94 // ------------------------------------------------------------------------
96 // ------------------------------------------------------------------------
98 public void testTmfDataRequest() {
99 TmfDataRequest
<TmfEvent
> request
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class);
101 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
102 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
104 assertEquals("getIndex", 0, request
.getIndex());
105 assertEquals("getNbRequestedEvents", TmfDataRequest
.ALL_DATA
, request
.getNbRequested());
107 assertFalse("isCompleted", request
.isCompleted());
108 assertFalse("isFailed", request
.isFailed());
109 assertFalse("isCancelled", request
.isCancelled());
111 assertEquals("getNbRead", 0, request
.getNbRead());
114 public void testTmfDataRequestIndex() {
115 TmfDataRequest
<TmfEvent
> request
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10);
117 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
118 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
120 assertEquals("getIndex", 10, request
.getIndex());
121 assertEquals("getNbRequestedEvents", TmfDataRequest
.ALL_DATA
, request
.getNbRequested());
123 assertFalse("isCompleted", request
.isCompleted());
124 assertFalse("isFailed", request
.isFailed());
125 assertFalse("isCancelled", request
.isCancelled());
127 assertEquals("getNbRead", 0, request
.getNbRead());
130 public void testTmfDataRequestIndexNbRequested() {
131 TmfDataRequest
<TmfEvent
> request
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10, 100);
133 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
134 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
136 assertEquals("getIndex", 10, request
.getIndex());
137 assertEquals("getNbRequestedEvents", 100, request
.getNbRequested());
139 assertFalse("isCompleted", request
.isCompleted());
140 assertFalse("isFailed", request
.isFailed());
141 assertFalse("isCancelled", request
.isCancelled());
143 assertEquals("getNbRead", 0, request
.getNbRead());
146 public void testTmfDataRequestIndexNbEventsBlocksize() {
147 TmfDataRequest
<TmfEvent
> request
= new TmfDataRequestStub
<TmfEvent
>(TmfEvent
.class, 10, 100, 200);
149 assertEquals("getRequestId", fRequestCount
++, request
.getRequestId());
150 assertEquals("getDataType", TmfEvent
.class, request
.getDataType());
152 assertEquals("getIndex", 10, request
.getIndex());
153 assertEquals("getNbRequestedEvents", 100, request
.getNbRequested());
155 assertFalse("isCompleted", request
.isCompleted());
156 assertFalse("isFailed", request
.isFailed());
157 assertFalse("isCancelled", request
.isCancelled());
159 assertEquals("getNbRead", 0, request
.getNbRead());
162 // ------------------------------------------------------------------------
164 // ------------------------------------------------------------------------
166 public void testEqualsReflexivity() throws Exception
{
167 assertTrue("equals", fRequest1
.equals(fRequest1
));
168 assertTrue("equals", fRequest2
.equals(fRequest2
));
170 assertFalse("equals", fRequest1
.equals(fRequest2
));
171 assertFalse("equals", fRequest2
.equals(fRequest1
));
174 public void testEqualsSymmetry() throws Exception
{
175 assertTrue("equals", fRequest1
.equals(fRequest1b
));
176 assertTrue("equals", fRequest1b
.equals(fRequest1
));
178 assertFalse("equals", fRequest1
.equals(fRequest3
));
179 assertFalse("equals", fRequest2
.equals(fRequest3
));
180 assertFalse("equals", fRequest3
.equals(fRequest1
));
181 assertFalse("equals", fRequest3
.equals(fRequest2
));
184 public void testEqualsTransivity() throws Exception
{
185 assertTrue("equals", fRequest1
.equals(fRequest1b
));
186 assertTrue("equals", fRequest1b
.equals(fRequest1c
));
187 assertTrue("equals", fRequest1
.equals(fRequest1c
));
190 public void testEqualsNull() throws Exception
{
191 assertFalse("equals", fRequest1
.equals(null));
192 assertFalse("equals", fRequest2
.equals(null));
195 // ------------------------------------------------------------------------
197 // ------------------------------------------------------------------------
199 public void testHashCode() throws Exception
{
200 assertTrue("hashCode", fRequest1
.hashCode() == fRequest1
.hashCode());
201 assertTrue("hashCode", fRequest2
.hashCode() == fRequest2
.hashCode());
202 assertTrue("hashCode", fRequest1
.hashCode() != fRequest2
.hashCode());
205 // ------------------------------------------------------------------------
207 // ------------------------------------------------------------------------
209 public void testToString() {
210 String expected1
= "[TmfDataRequest(0,TmfEvent,10,100)]";
211 String expected2
= "[TmfDataRequest(1,TmfEvent,20,100)]";
212 String expected3
= "[TmfDataRequest(2,TmfEvent,20,200)]";
213 String expected4
= "[TmfDataRequest(3,TmfEvent,20,200)]";
215 assertEquals("toString", expected1
, fRequest1
.toString());
216 assertEquals("toString", expected2
, fRequest2
.toString());
217 assertEquals("toString", expected3
, fRequest3
.toString());
218 assertEquals("toString", expected4
, fRequest4
.toString());
221 // ------------------------------------------------------------------------
223 // ------------------------------------------------------------------------
225 public void testDone() {
227 final boolean[] flags
= new boolean[4];
228 TmfDataRequest
<TmfEvent
> request
= setupTestRequest(flags
);
231 assertTrue ("isCompleted", request
.isCompleted());
232 assertFalse("isFailed", request
.isFailed());
233 assertFalse("isCancelled", request
.isCancelled());
235 assertTrue ("handleCompleted", flags
[0]);
236 assertTrue ("handleSuccess", flags
[1]);
237 assertFalse("handleFailure", flags
[2]);
238 assertFalse("handleCancel", flags
[3]);
241 // ------------------------------------------------------------------------
243 // ------------------------------------------------------------------------
245 public void testFail() {
247 final boolean[] flags
= new boolean[4];
248 TmfDataRequest
<TmfEvent
> request
= setupTestRequest(flags
);
251 assertTrue ("isCompleted", request
.isCompleted());
252 assertTrue ("isFailed", request
.isFailed());
253 assertFalse("isCancelled", request
.isCancelled());
255 assertTrue ("handleCompleted", flags
[0]);
256 assertFalse("handleSuccess", flags
[1]);
257 assertTrue ("handleFailure", flags
[2]);
258 assertFalse("handleCancel", flags
[3]);
261 // ------------------------------------------------------------------------
263 // ------------------------------------------------------------------------
265 public void testCancel() {
267 final boolean[] flags
= new boolean[4];
268 TmfDataRequest
<TmfEvent
> request
= setupTestRequest(flags
);
271 assertTrue ("isCompleted", request
.isCompleted());
272 assertFalse("isFailed", request
.isFailed());
273 assertTrue ("isCancelled", request
.isCancelled());
275 assertTrue ("handleCompleted", flags
[0]);
276 assertFalse("handleSuccess", flags
[1]);
277 assertFalse("handleFailure", flags
[2]);
278 assertTrue ("handleCancel", flags
[3]);
281 // ------------------------------------------------------------------------
283 // ------------------------------------------------------------------------
This page took 0.036753 seconds and 5 git commands to generate.