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
.tests
.event
;
15 import junit
.framework
.TestCase
;
17 import org
.eclipse
.linuxtools
.tmf
.event
.TmfEvent
;
18 import org
.eclipse
.linuxtools
.tmf
.event
.TmfEventContent
;
19 import org
.eclipse
.linuxtools
.tmf
.event
.TmfEventReference
;
20 import org
.eclipse
.linuxtools
.tmf
.event
.TmfEventSource
;
21 import org
.eclipse
.linuxtools
.tmf
.event
.TmfEventType
;
22 import org
.eclipse
.linuxtools
.tmf
.event
.TmfTimestamp
;
25 * <b><u>TmfEventTest</u></b>
27 * Test suite for the TmfEvent class.
29 public class TmfEventTest
extends TestCase
{
31 // ------------------------------------------------------------------------
33 // ------------------------------------------------------------------------
35 private final String fTypeId
= "Some type";
36 private final String fLabel0
= "label1";
37 private final String fLabel1
= "label2";
38 private final String
[] fLabels
= new String
[] { fLabel0
, fLabel1
};
40 private final TmfTimestamp fTimestamp1
= new TmfTimestamp(12345, (byte) 2, 5);
41 private final TmfTimestamp fTimestamp2
= new TmfTimestamp(12350, (byte) 2, 5);
42 private final TmfEventSource fSource
= new TmfEventSource("Source");
43 private final TmfEventType fType
= new TmfEventType(fTypeId
, fLabels
);
44 private final TmfEventReference fReference
= new TmfEventReference("Some reference");
46 private final TmfEvent fEvent1
;
47 private final TmfEvent fEvent2
;
49 private final TmfEventContent fContent1
;
50 private final TmfEventContent fContent2
;
52 // ------------------------------------------------------------------------
54 // ------------------------------------------------------------------------
57 * @param name the test name
59 public TmfEventTest(String name
) {
62 fEvent1
= new TmfEvent(fTimestamp1
, fSource
, fType
, fReference
);
63 fContent1
= new TmfEventContent(fEvent1
, "Some content");
64 fEvent1
.setContent(fContent1
);
66 fEvent2
= new TmfEvent(fTimestamp1
, fTimestamp2
, fSource
, fType
, fReference
);
67 fContent2
= new TmfEventContent(fEvent2
, "Some other content");
68 fEvent2
.setContent(fContent2
);
72 protected void setUp() throws Exception
{
77 protected void tearDown() throws Exception
{
81 // ------------------------------------------------------------------------
83 // ------------------------------------------------------------------------
85 public void testTmfEvent() {
86 assertEquals("getTimestamp", fTimestamp1
, fEvent1
.getTimestamp());
87 assertEquals("getOriginalTimestamp", fTimestamp1
, fEvent1
.getOriginalTimestamp());
88 assertEquals("getSource", fSource
, fEvent1
.getSource());
89 assertEquals("getType", fType
, fEvent1
.getType());
90 assertEquals("getContent", fContent1
, fEvent1
.getContent());
91 assertEquals("getReference", fReference
, fEvent1
.getReference());
94 public void testTmfEvent2() {
95 assertEquals("getTimestamp", fTimestamp2
, fEvent2
.getTimestamp());
96 assertEquals("getOriginalTimestamp", fTimestamp1
, fEvent2
.getOriginalTimestamp());
97 assertEquals("getSource", fSource
, fEvent2
.getSource());
98 assertEquals("getType", fType
, fEvent2
.getType());
99 assertEquals("getContent", fContent2
, fEvent2
.getContent());
100 assertEquals("getReference", fReference
, fEvent2
.getReference());
103 public void testTmfEventCopy() {
104 TmfEvent event
= new TmfEvent(fEvent1
);
105 assertEquals("getTimestamp", fTimestamp1
, event
.getTimestamp());
106 assertEquals("getOriginalTimestamp", fTimestamp1
, event
.getOriginalTimestamp());
107 assertEquals("getSource", fSource
, event
.getSource());
108 assertEquals("getType", fType
, event
.getType());
109 assertEquals("getContent", fContent1
, event
.getContent());
110 assertEquals("getReference", fReference
, event
.getReference());
113 public void testEventCopy2() throws Exception
{
118 catch (IllegalArgumentException e
) {
123 // ------------------------------------------------------------------------
125 // ------------------------------------------------------------------------
127 public void testEqualsReflexivity() throws Exception
{
128 assertTrue("equals", fEvent1
.equals(fEvent1
));
129 assertTrue("equals", fEvent2
.equals(fEvent2
));
131 assertTrue("equals", !fEvent1
.equals(fEvent2
));
132 assertTrue("equals", !fEvent2
.equals(fEvent1
));
135 public void testEqualsSymmetry() throws Exception
{
136 TmfEvent event1
= new TmfEvent(fEvent1
);
137 TmfEvent event2
= new TmfEvent(fEvent2
);
139 assertTrue("equals", event1
.equals(fEvent1
));
140 assertTrue("equals", fEvent1
.equals(event1
));
142 assertTrue("equals", event2
.equals(fEvent2
));
143 assertTrue("equals", fEvent2
.equals(event2
));
146 public void testEqualsTransivity() throws Exception
{
147 TmfEvent event1
= new TmfEvent(fEvent1
);
148 TmfEvent event2
= new TmfEvent(fEvent1
);
149 TmfEvent event3
= new TmfEvent(fEvent1
);
151 assertTrue("equals", event1
.equals(event2
));
152 assertTrue("equals", event2
.equals(event3
));
153 assertTrue("equals", event1
.equals(event3
));
156 public void testEqualsNull() throws Exception
{
157 assertTrue("equals", !fEvent1
.equals(null));
158 assertTrue("equals", !fEvent2
.equals(null));
161 // ------------------------------------------------------------------------
163 // ------------------------------------------------------------------------
165 public void testHashCode() throws Exception
{
166 TmfEvent event1
= new TmfEvent(fEvent1
);
167 TmfEvent event2
= new TmfEvent(fEvent2
);
169 assertTrue("hashCode", fEvent1
.hashCode() == event1
.hashCode());
170 assertTrue("hashCode", fEvent2
.hashCode() == event2
.hashCode());
172 assertTrue("hashCode", fEvent1
.hashCode() != event2
.hashCode());
173 assertTrue("hashCode", fEvent2
.hashCode() != event1
.hashCode());
176 // ------------------------------------------------------------------------
178 // ------------------------------------------------------------------------
180 public void testToString() {
181 String expected1
= "[TmfEvent(" + fTimestamp1
+ "," + fSource
+ "," + fType
+ "," + fContent1
+ ")]";
182 assertEquals("toString", expected1
, fEvent1
.toString());
184 String expected2
= "[TmfEvent(" + fTimestamp2
+ "," + fSource
+ "," + fType
+ "," + fContent2
+ ")]";
185 assertEquals("toString", expected2
, fEvent2
.toString());
188 // ------------------------------------------------------------------------
190 // ------------------------------------------------------------------------
192 public void testSetContent() {
193 TmfEvent event
= new TmfEvent(fEvent1
);
194 assertEquals("setContent", fContent1
, event
.getContent());
196 event
.setContent(fContent2
);
197 assertEquals("setContent", fContent2
, event
.getContent());
199 event
.setContent(fContent1
);
200 assertEquals("setContent", fContent1
, event
.getContent());