gdbtrace: Move plugins to the Trace Compass namespace
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng2.control.core.tests / src / org / eclipse / linuxtools / lttng2 / control / core / tests / model / impl / TraceInfoTest.java
CommitLineData
eb1bab5b 1/**********************************************************************
2ba3d0a1 2 * Copyright (c) 2012, 2013 Ericsson
b0318660 3 *
eb1bab5b
BH
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
b0318660
AM
8 *
9 * Contributors:
eb1bab5b 10 * Bernd Hufmann - Initial API and implementation
2ba3d0a1 11 * Alexandre Montplaisir - Port to JUnit4
eb1bab5b 12 **********************************************************************/
2ba3d0a1 13
8e8c0226 14package org.eclipse.linuxtools.lttng2.control.core.tests.model.impl;
eb1bab5b 15
8e8c0226
AM
16import static org.junit.Assert.assertEquals;
17import static org.junit.Assert.assertNotNull;
18import static org.junit.Assert.assertTrue;
19import static org.junit.Assert.fail;
eb1bab5b 20
8e8c0226
AM
21import org.eclipse.linuxtools.internal.lttng2.control.core.model.ITraceInfo;
22import org.eclipse.linuxtools.internal.lttng2.control.core.model.impl.TraceInfo;
2ba3d0a1
AM
23import org.junit.Before;
24import org.junit.Test;
eb1bab5b
BH
25
26/**
2ba3d0a1
AM
27 * The class <code>TraceInfoTest</code> contains test for the class
28 * <code>{@link TraceInfo}</code>.
eb1bab5b 29 */
2ba3d0a1 30public class TraceInfoTest {
eb1bab5b
BH
31
32 // ------------------------------------------------------------------------
33 // Test data
34 // ------------------------------------------------------------------------
2ba3d0a1 35
eb1bab5b
BH
36 private ITraceInfo fTraceInfo1 = null;
37 private ITraceInfo fTraceInfo2 = null;
b0318660
AM
38
39
eb1bab5b
BH
40 // ------------------------------------------------------------------------
41 // Housekeeping
42 // ------------------------------------------------------------------------
2ba3d0a1 43
eb1bab5b
BH
44 /**
45 * Perform pre-test initialization.
eb1bab5b 46 */
2ba3d0a1
AM
47 @Before
48 public void setUp() {
eb1bab5b
BH
49 fTraceInfo1 = new TraceInfo("event1");
50 fTraceInfo2 = new TraceInfo("event2");
51 }
52
eb1bab5b
BH
53 // ------------------------------------------------------------------------
54 // Tests
55 // ------------------------------------------------------------------------
56
57 /**
58 * Run the BaseEventInfo() constructor test.
eb1bab5b 59 */
2ba3d0a1 60 @Test
eb1bab5b
BH
61 public void testTraceInfo() {
62 TraceInfo fixture = new TraceInfo("event");
63 assertNotNull(fixture);
b0318660 64
eb1bab5b
BH
65 assertEquals("event", fixture.getName());
66 }
67
68 /**
69 * Test Copy Constructor
70 */
2ba3d0a1 71 @Test
eb1bab5b
BH
72 public void testTraceInfo2() {
73 try {
74 String name = null;
75 new TraceInfo(name);
76 fail("null name in custructor");
77 }
78 catch (IllegalArgumentException e) {
79 // Success
80 }
81 }
b0318660 82
eb1bab5b
BH
83 /**
84 * Test Copy Constructor
85 */
2ba3d0a1 86 @Test
eb1bab5b
BH
87 public void testTraceInfoCopy() {
88 TraceInfo info = new TraceInfo((TraceInfo)fTraceInfo1);
b0318660 89
eb1bab5b
BH
90 assertEquals(fTraceInfo1.getName(), info.getName());
91 }
92
93 /**
94 * Test Copy Constructor
95 */
2ba3d0a1 96 @Test
eb1bab5b
BH
97 public void testTraceCopy2() {
98 try {
99 TraceInfo info = null;
100 new TraceInfo(info);
101 fail("null copy");
102 }
103 catch (IllegalArgumentException e) {
104 // Success
105 }
106 }
b0318660 107
eb1bab5b
BH
108 /**
109 * Run the void setEventType(String) method test.
eb1bab5b 110 */
2ba3d0a1 111 @Test
eb1bab5b
BH
112 public void testSetName() {
113 TraceInfo fixture = new TraceInfo("event");
114 fixture.setName("newName");
115 assertEquals("newName", fixture.getName());
116 }
117
118 /**
119 * Run the String toString() method test.
eb1bab5b 120 */
2ba3d0a1 121 @Test
eb1bab5b
BH
122 public void testToString_1() {
123 String result = fTraceInfo1.toString();
124
125 // add additional test code here
126 assertEquals("[TraceInfo(Name=event1)]", result);
127 }
b0318660 128
eb1bab5b
BH
129 // ------------------------------------------------------------------------
130 // equals
131 // ------------------------------------------------------------------------
132
2ba3d0a1
AM
133 /**
134 * Run the equals() method test.
135 */
136 @Test
eb1bab5b
BH
137 public void testEqualsReflexivity() {
138 assertTrue("equals", fTraceInfo1.equals(fTraceInfo1));
139 assertTrue("equals", fTraceInfo2.equals(fTraceInfo2));
140
141 assertTrue("equals", !fTraceInfo1.equals(fTraceInfo2));
142 assertTrue("equals", !fTraceInfo2.equals(fTraceInfo1));
143 }
b0318660 144
2ba3d0a1
AM
145 /**
146 * Run the equals() method test.
147 */
148 @Test
eb1bab5b
BH
149 public void testEqualsSymmetry() {
150 TraceInfo info1 = new TraceInfo((TraceInfo)fTraceInfo1);
151 TraceInfo info2 = new TraceInfo((TraceInfo)fTraceInfo2);
152
153 assertTrue("equals", info1.equals(fTraceInfo1));
154 assertTrue("equals", fTraceInfo1.equals(info1));
155
156 assertTrue("equals", info2.equals(fTraceInfo2));
157 assertTrue("equals", fTraceInfo2.equals(info2));
158 }
2ba3d0a1
AM
159 /**
160 * Run the equals() method test.
161 */
162 @Test
eb1bab5b
BH
163 public void testEqualsTransivity() {
164 TraceInfo info1 = new TraceInfo((TraceInfo)fTraceInfo1);
165 TraceInfo info2 = new TraceInfo((TraceInfo)fTraceInfo1);
166 TraceInfo info3 = new TraceInfo((TraceInfo)fTraceInfo1);
167
168 assertTrue("equals", info1.equals(info2));
169 assertTrue("equals", info2.equals(info3));
170 assertTrue("equals", info1.equals(info3));
171 }
2ba3d0a1
AM
172 /**
173 * Run the equals() method test.
174 */
175 @Test
eb1bab5b
BH
176 public void testEqualsNull() {
177 assertTrue("equals", !fTraceInfo1.equals(null));
178 assertTrue("equals", !fTraceInfo2.equals(null));
179 }
b0318660 180
eb1bab5b
BH
181 // ------------------------------------------------------------------------
182 // hashCode
183 // ------------------------------------------------------------------------
184
2ba3d0a1
AM
185 /**
186 * Run the hashCode() method test.
187 */
188 @Test
eb1bab5b
BH
189 public void testHashCode() {
190 TraceInfo info1 = new TraceInfo((TraceInfo)fTraceInfo1);
191 TraceInfo info2 = new TraceInfo((TraceInfo)fTraceInfo2);
192
193 assertTrue("hashCode", fTraceInfo1.hashCode() == info1.hashCode());
194 assertTrue("hashCode", fTraceInfo2.hashCode() == info2.hashCode());
195
196 assertTrue("hashCode", fTraceInfo1.hashCode() != info2.hashCode());
197 assertTrue("hashCode", fTraceInfo2.hashCode() != info1.hashCode());
198 }
199}
This page took 0.061276 seconds and 5 git commands to generate.