1 /*******************************************************************************
2 * Copyright (c) 2009 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
.core
.tests
.event
;
15 import junit
.framework
.TestCase
;
17 import org
.eclipse
.linuxtools
.tmf
.core
.event
.ITmfEventField
;
18 import org
.eclipse
.linuxtools
.tmf
.core
.event
.TmfEvent
;
19 import org
.eclipse
.linuxtools
.tmf
.core
.event
.TmfEventField
;
20 import org
.eclipse
.linuxtools
.tmf
.core
.event
.TmfEventType
;
21 import org
.eclipse
.linuxtools
.tmf
.core
.event
.TmfTimestamp
;
24 * <b><u>TmfEventTest</u></b>
26 * Test suite for the TmfEvent class.
28 @SuppressWarnings("nls")
29 public class TmfEventTest
extends TestCase
{
31 // ------------------------------------------------------------------------
33 // ------------------------------------------------------------------------
35 private final String fContext
= TmfEventType
.DEFAULT_CONTEXT_ID
;
36 private final String fTypeId
= "Some type";
37 private final String fLabel0
= "label1";
38 private final String fLabel1
= "label2";
39 private final String
[] fLabels
= new String
[] { fLabel0
, fLabel1
};
41 private final TmfTimestamp fTimestamp1
= new TmfTimestamp(12345, (byte) 2, 5);
42 private final TmfTimestamp fTimestamp2
= new TmfTimestamp(12350, (byte) 2, 5);
43 private final String fSource
= "Source";
44 private final TmfEventType fType
= new TmfEventType(fContext
, fTypeId
, TmfEventField
.makeRoot(fLabels
));
45 private final String fReference
= "Some reference";
47 private final TmfEvent fEvent1
;
48 private final TmfEvent fEvent2
;
50 private final TmfEventField fContent1
;
51 private final TmfEventField fContent2
;
53 // ------------------------------------------------------------------------
55 // ------------------------------------------------------------------------
58 * @param name the test name
60 public TmfEventTest(String name
) {
63 fContent1
= new TmfEventField(ITmfEventField
.ROOT_ID
, "Some content");
64 fEvent1
= new TmfEvent(null, fTimestamp1
, fSource
, fType
, fContent1
, fReference
);
66 fContent2
= new TmfEventField(ITmfEventField
.ROOT_ID
, "Some other content");
67 fEvent2
= new TmfEvent(null, fTimestamp2
, fSource
, fType
, fContent2
, fReference
);
71 protected void setUp() throws Exception
{
76 protected void tearDown() throws Exception
{
80 // ------------------------------------------------------------------------
82 // ------------------------------------------------------------------------
84 public void testTmfEvent() {
85 assertEquals("getTimestamp", fTimestamp1
, fEvent1
.getTimestamp());
86 assertEquals("getSource", fSource
, fEvent1
.getSource());
87 assertEquals("getType", fType
, fEvent1
.getType());
88 assertEquals("getContent", fContent1
, fEvent1
.getContent());
89 assertEquals("getReference", fReference
, fEvent1
.getReference());
92 public void testTmfEvent2() {
93 assertEquals("getTimestamp", fTimestamp2
, fEvent2
.getTimestamp());
94 assertEquals("getSource", fSource
, fEvent2
.getSource());
95 assertEquals("getType", fType
, fEvent2
.getType());
96 assertEquals("getContent", fContent2
, fEvent2
.getContent());
97 assertEquals("getReference", fReference
, fEvent2
.getReference());
100 public void testTmfEventCopy() {
101 TmfEvent event
= new TmfEvent(fEvent1
);
102 assertEquals("getTimestamp", fTimestamp1
, event
.getTimestamp());
103 assertEquals("getSource", fSource
, event
.getSource());
104 assertEquals("getType", fType
, event
.getType());
105 assertEquals("getContent", fContent1
, event
.getContent());
106 assertEquals("getReference", fReference
, event
.getReference());
109 public void testEventCopy2() throws Exception
{
114 catch (IllegalArgumentException e
) {
119 // ------------------------------------------------------------------------
121 // ------------------------------------------------------------------------
123 public void testEqualsReflexivity() throws Exception
{
124 assertTrue("equals", fEvent1
.equals(fEvent1
));
125 assertTrue("equals", fEvent2
.equals(fEvent2
));
127 assertTrue("equals", !fEvent1
.equals(fEvent2
));
128 assertTrue("equals", !fEvent2
.equals(fEvent1
));
131 public void testEqualsSymmetry() throws Exception
{
132 TmfEvent event1
= new TmfEvent(fEvent1
);
133 TmfEvent event2
= new TmfEvent(fEvent2
);
135 assertTrue("equals", event1
.equals(fEvent1
));
136 assertTrue("equals", fEvent1
.equals(event1
));
138 assertTrue("equals", event2
.equals(fEvent2
));
139 assertTrue("equals", fEvent2
.equals(event2
));
142 public void testEqualsTransivity() throws Exception
{
143 TmfEvent event1
= new TmfEvent(fEvent1
);
144 TmfEvent event2
= new TmfEvent(fEvent1
);
145 TmfEvent event3
= new TmfEvent(fEvent1
);
147 assertTrue("equals", event1
.equals(event2
));
148 assertTrue("equals", event2
.equals(event3
));
149 assertTrue("equals", event1
.equals(event3
));
152 public void testEqualsNull() throws Exception
{
153 assertTrue("equals", !fEvent1
.equals(null));
154 assertTrue("equals", !fEvent2
.equals(null));
157 // ------------------------------------------------------------------------
159 // ------------------------------------------------------------------------
161 public void testHashCode() throws Exception
{
162 TmfEvent event1
= new TmfEvent(fEvent1
);
163 TmfEvent event2
= new TmfEvent(fEvent2
);
165 assertTrue("hashCode", fEvent1
.hashCode() == event1
.hashCode());
166 assertTrue("hashCode", fEvent2
.hashCode() == event2
.hashCode());
168 assertTrue("hashCode", fEvent1
.hashCode() != event2
.hashCode());
169 assertTrue("hashCode", fEvent2
.hashCode() != event1
.hashCode());
172 // // ------------------------------------------------------------------------
174 // // ------------------------------------------------------------------------
176 // public void testToString() {
177 // String expected1 = "[TmfEvent (" + fTimestamp1 + "," + fSource + "," + fType + "," + fContent1 + ")]";
178 // assertEquals("toString", expected1, fEvent1.toString());
180 // String expected2 = "[TmfEvent(" + fTimestamp2 + "," + fSource + "," + fType + "," + fContent2 + ")]";
181 // assertEquals("toString", expected2, fEvent2.toString());
184 // ------------------------------------------------------------------------
186 // ------------------------------------------------------------------------
188 public void testSetContent() {
189 TmfEvent event
= new TmfEvent(fEvent1
);
190 assertEquals("setContent", fContent1
, event
.getContent());
192 event
.setContent(fContent2
);
193 assertEquals("setContent", fContent2
, event
.getContent());
195 event
.setContent(fContent1
);
196 assertEquals("setContent", fContent1
, event
.getContent());