Rename xxx.lttng to xxx.lttng.core
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.tests / src / org / eclipse / linuxtools / tmf / tests / event / TmfEventTest.java
CommitLineData
d18dd09b
ASL
1/*******************************************************************************
2 * Copyright (c) 2009 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.tests.event;
14
cbd4ad82
FC
15import junit.framework.TestCase;
16
d18dd09b
ASL
17import org.eclipse.linuxtools.tmf.event.TmfEvent;
18import org.eclipse.linuxtools.tmf.event.TmfEventContent;
19import org.eclipse.linuxtools.tmf.event.TmfEventReference;
20import org.eclipse.linuxtools.tmf.event.TmfEventSource;
21import org.eclipse.linuxtools.tmf.event.TmfEventType;
22import org.eclipse.linuxtools.tmf.event.TmfTimestamp;
23
24/**
25 * <b><u>TmfEventTest</u></b>
26 * <p>
cbd4ad82 27 * Test suite for the TmfEvent class.
d18dd09b 28 */
3b38ea61 29@SuppressWarnings("nls")
d18dd09b
ASL
30public class TmfEventTest extends TestCase {
31
cbd4ad82
FC
32 // ------------------------------------------------------------------------
33 // Variables
34 // ------------------------------------------------------------------------
35
d18dd09b
ASL
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 };
40
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 TmfEventSource fSource = new TmfEventSource("Source");
44 private final TmfEventType fType = new TmfEventType(fTypeId, fLabels);
45 private final TmfEventReference fReference = new TmfEventReference("Some reference");
46
47 private final TmfEvent fEvent1;
48 private final TmfEvent fEvent2;
49
50 private final TmfEventContent fContent1;
51 private final TmfEventContent fContent2;
52
cbd4ad82 53 // ------------------------------------------------------------------------
d18dd09b 54 // Housekeeping
cbd4ad82 55 // ------------------------------------------------------------------------
d18dd09b 56
cbd4ad82
FC
57 /**
58 * @param name the test name
59 */
d18dd09b
ASL
60 public TmfEventTest(String name) {
61 super(name);
62
63 fEvent1 = new TmfEvent(fTimestamp1, fSource, fType, fReference);
64 fContent1 = new TmfEventContent(fEvent1, "Some content");
65 fEvent1.setContent(fContent1);
66
67 fEvent2 = new TmfEvent(fTimestamp1, fTimestamp2, fSource, fType, fReference);
68 fContent2 = new TmfEventContent(fEvent2, "Some other content");
69 fEvent2.setContent(fContent2);
70 }
71
72 @Override
73 protected void setUp() throws Exception {
74 super.setUp();
75 }
76
77 @Override
78 protected void tearDown() throws Exception {
79 super.tearDown();
80 }
81
cbd4ad82 82 // ------------------------------------------------------------------------
d18dd09b 83 // Constructors
cbd4ad82 84 // ------------------------------------------------------------------------
d18dd09b
ASL
85
86 public void testTmfEvent() {
87 assertEquals("getTimestamp", fTimestamp1, fEvent1.getTimestamp());
88 assertEquals("getOriginalTimestamp", fTimestamp1, fEvent1.getOriginalTimestamp());
89 assertEquals("getSource", fSource, fEvent1.getSource());
90 assertEquals("getType", fType, fEvent1.getType());
91 assertEquals("getContent", fContent1, fEvent1.getContent());
92 assertEquals("getReference", fReference, fEvent1.getReference());
93 }
94
95 public void testTmfEvent2() {
96 assertEquals("getTimestamp", fTimestamp2, fEvent2.getTimestamp());
97 assertEquals("getOriginalTimestamp", fTimestamp1, fEvent2.getOriginalTimestamp());
98 assertEquals("getSource", fSource, fEvent2.getSource());
99 assertEquals("getType", fType, fEvent2.getType());
100 assertEquals("getContent", fContent2, fEvent2.getContent());
101 assertEquals("getReference", fReference, fEvent2.getReference());
102 }
103
104 public void testTmfEventCopy() {
105 TmfEvent event = new TmfEvent(fEvent1);
106 assertEquals("getTimestamp", fTimestamp1, event.getTimestamp());
107 assertEquals("getOriginalTimestamp", fTimestamp1, event.getOriginalTimestamp());
108 assertEquals("getSource", fSource, event.getSource());
109 assertEquals("getType", fType, event.getType());
110 assertEquals("getContent", fContent1, event.getContent());
111 assertEquals("getReference", fReference, event.getReference());
112 }
113
cbd4ad82
FC
114 public void testEventCopy2() throws Exception {
115 try {
116 new TmfEvent(null);
117 fail("null copy");
118 }
119 catch (IllegalArgumentException e) {
120 // Success
121 }
122 }
123
124 // ------------------------------------------------------------------------
125 // equals
126 // ------------------------------------------------------------------------
127
128 public void testEqualsReflexivity() throws Exception {
129 assertTrue("equals", fEvent1.equals(fEvent1));
130 assertTrue("equals", fEvent2.equals(fEvent2));
131
132 assertTrue("equals", !fEvent1.equals(fEvent2));
133 assertTrue("equals", !fEvent2.equals(fEvent1));
134 }
135
136 public void testEqualsSymmetry() throws Exception {
137 TmfEvent event1 = new TmfEvent(fEvent1);
138 TmfEvent event2 = new TmfEvent(fEvent2);
139
140 assertTrue("equals", event1.equals(fEvent1));
141 assertTrue("equals", fEvent1.equals(event1));
142
143 assertTrue("equals", event2.equals(fEvent2));
144 assertTrue("equals", fEvent2.equals(event2));
145 }
146
147 public void testEqualsTransivity() throws Exception {
148 TmfEvent event1 = new TmfEvent(fEvent1);
149 TmfEvent event2 = new TmfEvent(fEvent1);
150 TmfEvent event3 = new TmfEvent(fEvent1);
151
152 assertTrue("equals", event1.equals(event2));
153 assertTrue("equals", event2.equals(event3));
154 assertTrue("equals", event1.equals(event3));
155 }
156
cbd4ad82
FC
157 public void testEqualsNull() throws Exception {
158 assertTrue("equals", !fEvent1.equals(null));
159 assertTrue("equals", !fEvent2.equals(null));
160 }
161
162 // ------------------------------------------------------------------------
2fb2eb37
FC
163 // hashCode
164 // ------------------------------------------------------------------------
165
166 public void testHashCode() throws Exception {
167 TmfEvent event1 = new TmfEvent(fEvent1);
168 TmfEvent event2 = new TmfEvent(fEvent2);
169
170 assertTrue("hashCode", fEvent1.hashCode() == event1.hashCode());
171 assertTrue("hashCode", fEvent2.hashCode() == event2.hashCode());
172
173 assertTrue("hashCode", fEvent1.hashCode() != event2.hashCode());
174 assertTrue("hashCode", fEvent2.hashCode() != event1.hashCode());
175 }
176
177 // ------------------------------------------------------------------------
cbd4ad82
FC
178 // toString
179 // ------------------------------------------------------------------------
180
181 public void testToString() {
182 String expected1 = "[TmfEvent(" + fTimestamp1 + "," + fSource + "," + fType + "," + fContent1 + ")]";
183 assertEquals("toString", expected1, fEvent1.toString());
184
185 String expected2 = "[TmfEvent(" + fTimestamp2 + "," + fSource + "," + fType + "," + fContent2 + ")]";
186 assertEquals("toString", expected2, fEvent2.toString());
187 }
188
189 // ------------------------------------------------------------------------
190 // setContent
191 // ------------------------------------------------------------------------
192
193 public void testSetContent() {
194 TmfEvent event = new TmfEvent(fEvent1);
195 assertEquals("setContent", fContent1, event.getContent());
196
197 event.setContent(fContent2);
198 assertEquals("setContent", fContent2, event.getContent());
199
200 event.setContent(fContent1);
201 assertEquals("setContent", fContent1, event.getContent());
202 }
d18dd09b
ASL
203
204}
This page took 0.039063 seconds and 5 git commands to generate.