Bug 448058: Replace RSE by org.eclipse.remote
[deliverable/tracecompass.git] / org.eclipse.tracecompass.lttng2.control.ui.tests / src / org / eclipse / tracecompass / lttng2 / control / ui / tests / model / component / TraceControlTreeModelTest.java
CommitLineData
eb1bab5b 1/**********************************************************************
b732adaa 2 * Copyright (c) 2012, 2014 Ericsson
cfdb727a 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
cfdb727a
AM
8 *
9 * Contributors:
eb1bab5b 10 * Bernd Hufmann - Initial API and implementation
2ba3d0a1 11 * Alexandre Montplaisir - Port to JUnit4
b732adaa 12 * Markus Schorn - Bug 448058: Use org.eclipse.remote in favor of RSE
eb1bab5b 13 **********************************************************************/
2ba3d0a1 14
9bc60be7 15package org.eclipse.tracecompass.lttng2.control.ui.tests.model.component;
eb1bab5b 16
2ba3d0a1
AM
17import static org.junit.Assert.assertEquals;
18import static org.junit.Assert.assertFalse;
19import static org.junit.Assert.assertNotNull;
20import static org.junit.Assert.assertNotSame;
21import static org.junit.Assert.assertNull;
22import static org.junit.Assert.assertTrue;
23
d132bcc7
BH
24import java.io.File;
25import java.net.URL;
26
d132bcc7
BH
27import org.eclipse.core.runtime.FileLocator;
28import org.eclipse.core.runtime.Path;
b732adaa
MS
29import org.eclipse.remote.core.IRemoteConnection;
30import org.eclipse.remote.core.IRemoteConnectionManager;
31import org.eclipse.remote.core.RemoteServices;
eb1bab5b 32import org.eclipse.swt.graphics.Image;
9bc60be7
AM
33import org.eclipse.tracecompass.internal.lttng2.control.core.model.LogLevelType;
34import org.eclipse.tracecompass.internal.lttng2.control.core.model.TargetNodeState;
35import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceChannelOutputType;
36import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceEnablement;
37import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceEventType;
38import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceLogLevel;
39import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceSessionState;
40import org.eclipse.tracecompass.internal.lttng2.control.stubs.service.TestRemoteSystemProxy;
41import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.ITraceControlComponent;
42import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.BaseEventComponent;
43import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.KernelProviderComponent;
44import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TargetNodeComponent;
45import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceChannelComponent;
46import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceDomainComponent;
47import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceEventComponent;
48import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceProbeEventComponent;
49import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceProviderGroup;
50import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceSessionComponent;
51import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceSessionGroup;
52import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.UstProviderComponent;
53import org.eclipse.tracecompass.internal.lttng2.control.ui.views.service.ILttngControlService;
54import org.eclipse.tracecompass.internal.lttng2.control.ui.views.service.LTTngControlService;
eb1bab5b
BH
55import org.junit.After;
56import org.junit.Before;
2ba3d0a1 57import org.junit.Test;
9269df72 58import org.osgi.framework.FrameworkUtil;
eb1bab5b
BH
59
60/**
2ba3d0a1
AM
61 * The class <code>TraceControlTreeModelTest</code> contains tests for the tree
62 * component classes.
eb1bab5b 63 */
2ba3d0a1 64public class TraceControlTreeModelTest {
cfdb727a 65
a26d90be
BH
66 // ------------------------------------------------------------------------
67 // Constants
68 // ------------------------------------------------------------------------
69
d132bcc7
BH
70 private static final String TEST_STREAM = "ListInfoTest.cfg";
71 private static final String SCEN_LIST_INFO_TEST = "ListInfoTest";
4ea599a5 72 private static final String TARGET_NODE_NAME = "myNode";
cfdb727a 73
eb1bab5b
BH
74 // ------------------------------------------------------------------------
75 // Test data
76 // ------------------------------------------------------------------------
cfdb727a 77
d132bcc7 78 private TestRemoteSystemProxy fProxy;
cfdb727a
AM
79 private String fTestFile;
80
eb1bab5b
BH
81 // ------------------------------------------------------------------------
82 // Housekeeping
83 // ------------------------------------------------------------------------
84
85 /**
86 * Perform pre-test initialization.
87 *
88 * @throws Exception
89 * if the initialization fails for some reason
eb1bab5b 90 */
eb1bab5b
BH
91 @Before
92 public void setUp() throws Exception {
d132bcc7 93 fProxy = new TestRemoteSystemProxy();
9269df72 94 URL location = FileLocator.find(FrameworkUtil.getBundle(this.getClass()), new Path(TraceControlTestFacility.DIRECTORY + File.separator + TEST_STREAM), null);
d132bcc7
BH
95 File testfile = new File(FileLocator.toFileURL(location).toURI());
96 fTestFile = testfile.getAbsolutePath();
eb1bab5b
BH
97 }
98
99 /**
100 * Perform post-test clean-up.
eb1bab5b 101 */
eb1bab5b 102 @After
2ba3d0a1 103 public void tearDown() {
b957fb8c 104 TraceControlTestFacility.getInstance().waitForJobs();
eb1bab5b 105 }
cfdb727a 106
eb1bab5b
BH
107 /**
108 * Run the TraceControlComponent.
109 */
2ba3d0a1 110 @Test
b732adaa 111 public void testTraceControlComponents() {
cfdb727a 112
d132bcc7
BH
113 fProxy.setTestFile(fTestFile);
114 fProxy.setScenario(SCEN_LIST_INFO_TEST);
cfdb727a 115
eb1bab5b
BH
116 ITraceControlComponent root = TraceControlTestFacility.getInstance().getControlView().getTraceControlRoot();
117
b732adaa
MS
118 IRemoteConnectionManager cm = RemoteServices.getLocalServices().getConnectionManager();
119 IRemoteConnection host = cm.getConnection(IRemoteConnectionManager.LOCAL_CONNECTION_NAME);
eb1bab5b 120
4ea599a5 121 TargetNodeComponent node = new TargetNodeComponent(TARGET_NODE_NAME, root, host, fProxy);
eb1bab5b
BH
122
123 root.addChild(node);
124 node.connect();
125
b732adaa 126 TraceControlTestFacility.getInstance().waitForConnect(node);
eb1bab5b
BH
127 TraceControlTestFacility.getInstance().waitForJobs();
128
eb1bab5b
BH
129 // ------------------------------------------------------------------------
130 // Verify Parameters of TargetNodeComponent
131 // ------------------------------------------------------------------------
b732adaa
MS
132 assertEquals("localhost", node.getRemoteConnection().getAddress()); // assigned in createLocalHost() above
133 assertEquals("Local", node.getToolTip()); // assigned in createLocalHost() above
eb1bab5b
BH
134 Image connectedImage = node.getImage();
135 assertNotNull(connectedImage);
136 assertEquals(TargetNodeState.CONNECTED, node.getTargetNodeState());
137 assertNotNull(node.getControlService());
138 ILttngControlService service = node.getControlService();
139 assertTrue(service instanceof LTTngControlService);
140 node.setControlService(service);
141 assertTrue(node.getControlService() instanceof LTTngControlService);
142
eb1bab5b
BH
143
144 // ------------------------------------------------------------------------
145 // Verify Children of TargetNodeComponent
146 // ------------------------------------------------------------------------
147 ITraceControlComponent[] groups = node.getChildren();
148 assertNotNull(groups);
149 assertEquals(2, groups.length);
cfdb727a 150
eb1bab5b
BH
151 assertTrue(groups[0] instanceof TraceProviderGroup);
152 assertTrue(groups[1] instanceof TraceSessionGroup);
cfdb727a 153
eb1bab5b
BH
154 assertEquals("Provider", groups[0].getName());
155 assertEquals("Sessions", groups[1].getName());
156
157 // ------------------------------------------------------------------------
158 // Verify TraceProviderGroup
159 // ------------------------------------------------------------------------
160 ITraceControlComponent[] providers = groups[0].getChildren();
161
162 assertNotNull(providers);
163 assertEquals(3, providers.length);
164
165 // ------------------------------------------------------------------------
a07c7629 166 // Verify KernelProviderComponent
eb1bab5b
BH
167 // ------------------------------------------------------------------------
168 KernelProviderComponent kernelProvider = (KernelProviderComponent) providers[0];
169
170 // ------------------------------------------------------------------------
171 // Verify event info (kernel provider)
172 // ------------------------------------------------------------------------
173 ITraceControlComponent[] events = kernelProvider.getChildren();
174 assertNotNull(events);
175 assertEquals(3, events.length);
176
177 BaseEventComponent baseEventInfo = (BaseEventComponent) events[0];
178 assertNotNull(baseEventInfo);
179 assertEquals("sched_kthread_stop", baseEventInfo.getName());
180 assertEquals(TraceLogLevel.TRACE_EMERG, baseEventInfo.getLogLevel());
181 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
182
183 baseEventInfo = (BaseEventComponent) events[1];
184 assertEquals("sched_kthread_stop_ret", baseEventInfo.getName());
185 assertEquals(TraceLogLevel.TRACE_EMERG, baseEventInfo.getLogLevel());
186 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
187
188 baseEventInfo = (BaseEventComponent) events[2];
189 assertEquals("sched_wakeup_new", baseEventInfo.getName());
190 assertEquals(TraceLogLevel.TRACE_EMERG, baseEventInfo.getLogLevel());
191 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
192
193 // ------------------------------------------------------------------------
194 // Verify UstProviderComponent
195 // ------------------------------------------------------------------------
196 UstProviderComponent ustProvider = (UstProviderComponent) providers[1];
2e74131b 197 assertEquals("/home/user/git/lttng-ust/tests/hello.cxx/.libs/lt-hello [PID=9379]", ustProvider.getName());
eb1bab5b
BH
198 assertEquals(9379, ustProvider.getPid());
199
200 // ------------------------------------------------------------------------
201 // Verify event info (UST provider)
202 // ------------------------------------------------------------------------
203 events = ustProvider.getChildren();
204 assertNotNull(events);
205 assertEquals(2, events.length);
206
207 baseEventInfo = (BaseEventComponent) events[0];
208 assertNotNull(baseEventInfo);
209 assertEquals("ust_tests_hello:tptest_sighandler", baseEventInfo.getName());
4775bcbf 210 assertEquals(TraceLogLevel.TRACE_DEBUG_MODULE, baseEventInfo.getLogLevel());
eb1bab5b
BH
211 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
212
213 baseEventInfo = (BaseEventComponent) events[1];
214 assertEquals("ust_tests_hello:tptest", baseEventInfo.getName());
215 assertEquals(TraceLogLevel.TRACE_INFO, baseEventInfo.getLogLevel());
216 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
217
218 // ------------------------------------------------------------------------
219 // Verify UstProviderComponent
220 // ------------------------------------------------------------------------
221 ustProvider = (UstProviderComponent) providers[2];
2e74131b 222 assertEquals("/home/user/git/lttng-ust/tests/hello.cxx/.libs/lt-hello [PID=4852]", ustProvider.getName());
eb1bab5b 223 assertEquals(4852, ustProvider.getPid());
cfdb727a 224
eb1bab5b
BH
225 // verify getters and setter
226 verifyUstProviderGettersSetters(ustProvider);
227
228 // ------------------------------------------------------------------------
229 // Verify event info (UST provider)
230 // ------------------------------------------------------------------------
231 events = ustProvider.getChildren();
232 assertNotNull(events);
233 assertEquals(2, events.length);
234
235 baseEventInfo = (BaseEventComponent) events[0];
236 assertNotNull(baseEventInfo);
237 assertEquals("ust_tests_hello:tptest_sighandler", baseEventInfo.getName());
238 assertEquals(TraceLogLevel.TRACE_WARNING, baseEventInfo.getLogLevel());
239 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
240
241 baseEventInfo = (BaseEventComponent) events[1];
242 assertEquals("ust_tests_hello:tptest", baseEventInfo.getName());
4775bcbf 243 assertEquals(TraceLogLevel.TRACE_DEBUG_FUNCTION, baseEventInfo.getLogLevel());
eb1bab5b 244 assertEquals(TraceEventType.TRACEPOINT, baseEventInfo.getEventType());
cfdb727a 245
eb1bab5b
BH
246 // verify getters and setters
247 verifyBaseEventGettersSetters(baseEventInfo);
cfdb727a 248
eb1bab5b
BH
249 // ------------------------------------------------------------------------
250 // Verify TraceSessionGroup
251 // ------------------------------------------------------------------------
252 ITraceControlComponent[] sessions = groups[1].getChildren();
253 assertNotNull(sessions);
254 assertEquals(2, sessions.length);
255 for (int i = 0; i < sessions.length; i++) {
256 assertTrue(sessions[i] instanceof TraceSessionComponent);
257 }
258 assertEquals("mysession1", sessions[0].getName());
259 assertEquals("mysession", sessions[1].getName());
260
261 // ------------------------------------------------------------------------
262 // Verify TraceSessionComponent
263 // ------------------------------------------------------------------------
264 TraceSessionComponent session = (TraceSessionComponent)sessions[1];
265 assertEquals("mysession", session.getName());
266 assertEquals("/home/user/lttng-traces/mysession-20120129-084256", session.getSessionPath());
267 assertEquals(TraceSessionState.ACTIVE, session.getSessionState());
268
269 // Verify setters and setters
270 verifySessionGetterSetters(session);
cfdb727a 271
eb1bab5b
BH
272 ITraceControlComponent[] domains = session.getChildren();
273 assertNotNull(domains);
274 assertEquals(2, domains.length);
cfdb727a 275
eb1bab5b
BH
276 // ------------------------------------------------------------------------
277 // Verify Kernel domain
278 // ------------------------------------------------------------------------
279 assertEquals("Kernel", domains[0].getName());
280 ITraceControlComponent[] channels = domains[0].getChildren();
281 assertNotNull(channels);
282 assertEquals(2, channels.length);
283
4ea599a5
BH
284 // Verify setters and setters
285 verifyDomainGettersSetters((TraceDomainComponent) domains[0]);
cfdb727a 286
eb1bab5b
BH
287 // ------------------------------------------------------------------------
288 // Verify Kernel's channel0
289 // ------------------------------------------------------------------------
290 assertTrue(channels[0] instanceof TraceChannelComponent);
cfdb727a 291 TraceChannelComponent channel = (TraceChannelComponent) channels[0];
eb1bab5b
BH
292 assertEquals("channel0", channel.getName());
293 assertEquals(4, channel.getNumberOfSubBuffers());
0ad9fc89
JRJ
294 assertEquals("splice()", channel.getOutputType().getInName());
295 assertEquals(TraceChannelOutputType.SPLICE, channel.getOutputType());
eb1bab5b
BH
296 assertEquals(false, channel.isOverwriteMode());
297 assertEquals(200, channel.getReadTimer());
298 assertEquals(TraceEnablement.ENABLED, channel.getState());
299 assertEquals(262144, channel.getSubBufferSize());
300 assertEquals(0, channel.getSwitchTimer());
301
302 // ------------------------------------------------------------------------
303 // Verify event info (kernel, channel0)
304 // ------------------------------------------------------------------------
305 ITraceControlComponent[] channel0Events = channel.getChildren();
306 assertNotNull(channel0Events);
d132bcc7 307 assertEquals(5, channel0Events.length);
eb1bab5b
BH
308 assertTrue(channel0Events[0] instanceof TraceEventComponent);
309 assertTrue(channel0Events[1] instanceof TraceEventComponent);
d132bcc7
BH
310 assertTrue(channel0Events[2] instanceof TraceProbeEventComponent);
311 assertTrue(channel0Events[3] instanceof TraceProbeEventComponent);
312 assertTrue(channel0Events[4] instanceof TraceEventComponent);
cfdb727a 313
eb1bab5b
BH
314 TraceEventComponent event = (TraceEventComponent) channel0Events[0];
315 assertEquals("block_rq_remap", event.getName());
316 assertEquals(TraceLogLevel.TRACE_EMERG, event.getLogLevel());
317 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
318 assertEquals(TraceEnablement.ENABLED, event.getState());
cfdb727a 319
eb1bab5b
BH
320 event = (TraceEventComponent) channel0Events[1];
321 assertEquals("block_bio_remap", event.getName());
322 assertEquals(TraceLogLevel.TRACE_EMERG, event.getLogLevel());
323 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
324 assertEquals(TraceEnablement.DISABLED, event.getState());
325
d132bcc7
BH
326 TraceProbeEventComponent probeEvent = (TraceProbeEventComponent) channel0Events[2];
327 assertEquals("myevent2", probeEvent.getName());
328 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, probeEvent.getLogLevel());
329 assertEquals(TraceEventType.PROBE, probeEvent.getEventType());
330 assertEquals(TraceEnablement.ENABLED, probeEvent.getState());
331 assertEquals("0xc0101340", probeEvent.getAddress());
332 assertNull(probeEvent.getOffset());
333 assertNull(probeEvent.getSymbol());
334
4ea599a5
BH
335 // verify getters and setter
336 verifyProbeEventGettersSetters(probeEvent);
337
d132bcc7
BH
338 probeEvent = (TraceProbeEventComponent) channel0Events[3];
339 assertEquals("myevent0", probeEvent.getName());
340 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, probeEvent.getLogLevel());
341 assertEquals(TraceEventType.PROBE, probeEvent.getEventType());
342 assertEquals(TraceEnablement.ENABLED, probeEvent.getState());
343 assertNull(probeEvent.getAddress());
344 assertEquals("0x0", probeEvent.getOffset());
345 assertEquals("init_post", probeEvent.getSymbol());
cfdb727a 346
d132bcc7
BH
347 event = (TraceEventComponent) channel0Events[4];
348 assertEquals("syscalls", event.getName());
349 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel());
350 assertEquals(TraceEventType.SYSCALL, event.getEventType());
351 assertEquals(TraceEnablement.ENABLED, event.getState());
cfdb727a 352
eb1bab5b
BH
353 // ------------------------------------------------------------------------
354 // Verify Kernel's channel1
355 // ------------------------------------------------------------------------
356 assertEquals("channel1", channels[1].getName());
cfdb727a 357 channel = (TraceChannelComponent) channels[1];
eb1bab5b 358 assertEquals(4, channel.getNumberOfSubBuffers());
0ad9fc89
JRJ
359 assertEquals("splice()", channel.getOutputType().getInName());
360 assertEquals(TraceChannelOutputType.SPLICE, channel.getOutputType());
eb1bab5b
BH
361 assertEquals(true, channel.isOverwriteMode());
362 assertEquals(400, channel.getReadTimer());
363 assertEquals(TraceEnablement.DISABLED, channel.getState());
364 assertEquals(524288, channel.getSubBufferSize());
365 assertEquals(100, channel.getSwitchTimer());
366
367 // ------------------------------------------------------------------------
368 // Verify event info (kernel, channel1)
369 // ------------------------------------------------------------------------
370 ITraceControlComponent[] channel1Events = channels[1].getChildren();
371 assertEquals(0, channel1Events.length);
372
373 // ------------------------------------------------------------------------
374 // Verify domain UST global
375 // ------------------------------------------------------------------------
376 assertEquals("UST global", domains[1].getName());
cfdb727a 377
eb1bab5b 378 ITraceControlComponent[] ustChannels = domains[1].getChildren();
cfdb727a 379
eb1bab5b
BH
380 for (int i = 0; i < ustChannels.length; i++) {
381 assertTrue(ustChannels[i] instanceof TraceChannelComponent);
382 }
383
384 // ------------------------------------------------------------------------
385 // Verify UST global's mychannel1
386 // ------------------------------------------------------------------------
cfdb727a 387 channel = (TraceChannelComponent) ustChannels[0];
eb1bab5b
BH
388 assertEquals("mychannel1", channel.getName());
389 assertEquals(8, channel.getNumberOfSubBuffers());
0ad9fc89
JRJ
390 assertEquals("mmap()", channel.getOutputType().getInName());
391 assertEquals(TraceChannelOutputType.MMAP, channel.getOutputType());
eb1bab5b
BH
392 assertEquals(true, channel.isOverwriteMode());
393 assertEquals(100, channel.getReadTimer());
394 assertEquals(TraceEnablement.DISABLED, channel.getState());
395 assertEquals(8192, channel.getSubBufferSize());
396 assertEquals(200, channel.getSwitchTimer());
cfdb727a
AM
397
398 // verify getters and setters
eb1bab5b
BH
399 verifyChannelGettersSetters(channel);
400
401 // ------------------------------------------------------------------------
402 // Verify event info (UST global, mychannel1)
403 // ------------------------------------------------------------------------
404 ITraceControlComponent[] ustEvents = channel.getChildren();
405 assertEquals(0, ustEvents.length);
406
407 // ------------------------------------------------------------------------
408 // Verify UST global's channel0
409 // ------------------------------------------------------------------------
410 channel = (TraceChannelComponent) ustChannels[1];
411 assertEquals("channel0", channel.getName());
412 assertEquals(4, channel.getNumberOfSubBuffers());
0ad9fc89
JRJ
413 assertEquals("mmap()", channel.getOutputType().getInName());
414 assertEquals(TraceChannelOutputType.MMAP, channel.getOutputType());
eb1bab5b
BH
415 assertEquals(false, channel.isOverwriteMode());
416 assertEquals(200, channel.getReadTimer());
417 assertEquals(TraceEnablement.ENABLED, channel.getState());
418 assertEquals(4096, channel.getSubBufferSize());
419 assertEquals(0, channel.getSwitchTimer());
420
421 // ------------------------------------------------------------------------
422 // Verify event info (UST global, channel0)
423 // ------------------------------------------------------------------------
424 ustEvents = channel.getChildren();
54f2dcc0 425 assertEquals(4, ustEvents.length);
cfdb727a 426
eb1bab5b
BH
427 event = (TraceEventComponent) ustEvents[0];
428 assertEquals("ust_tests_hello:tptest_sighandler", event.getName());
4775bcbf 429 assertEquals(TraceLogLevel.TRACE_DEBUG_LINE, event.getLogLevel());
54f2dcc0
BH
430 assertEquals(LogLevelType.LOGLEVEL_ONLY, event.getLogLevelType());
431 assertEquals(LogLevelType.LOGLEVEL_ONLY.getShortName(), event.getLogLevelType().getShortName());
eb1bab5b
BH
432 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
433 assertEquals(TraceEnablement.DISABLED, event.getState());
cfdb727a 434
eb1bab5b 435 event = (TraceEventComponent) ustEvents[1];
54f2dcc0
BH
436 assertEquals("ust_tests_hello:tptest_sighandler1", event.getName());
437 assertEquals(TraceLogLevel.TRACE_INFO, event.getLogLevel());
438 assertEquals(LogLevelType.LOGLEVEL, event.getLogLevelType());
439 assertEquals(LogLevelType.LOGLEVEL.getShortName(), event.getLogLevelType().getShortName());
440 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
441 assertEquals(TraceEnablement.DISABLED, event.getState());
442
443 event = (TraceEventComponent) ustEvents[2];
444 assertEquals("ust_tests_hello:tptest_sighandler2", event.getName());
445 assertEquals(TraceLogLevel.TRACE_DEBUG_SYSTEM, event.getLogLevel());
446 assertEquals(LogLevelType.LOGLEVEL_NONE, event.getLogLevelType());
447 assertEquals(LogLevelType.LOGLEVEL_NONE.getShortName(), event.getLogLevelType().getShortName());
448 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
449 assertEquals(TraceEnablement.DISABLED, event.getState());
450
451 event = (TraceEventComponent) ustEvents[3];
452 assertEquals("*", event.getName());
4775bcbf 453 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel());
eb1bab5b
BH
454 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
455 assertEquals(TraceEnablement.ENABLED, event.getState());
cfdb727a 456
eb1bab5b
BH
457 // verify getters and setters
458 verifyEventGettersSetters(event);
cfdb727a 459
eb1bab5b
BH
460 // disconnect
461 node.disconnect();
462 assertEquals(TargetNodeState.DISCONNECTED, node.getTargetNodeState());
463 assertNotNull(node.getImage());
464 assertNotSame(connectedImage, node.getImage());
cfdb727a 465
a26d90be 466 node.getParent().removeChild(node);
eb1bab5b 467 }
cfdb727a 468
0a78d11a 469 private static void verifySessionGetterSetters(TraceSessionComponent session) {
eb1bab5b
BH
470 // save original values
471 String name = session.getName();
472 String origPath = session.getSessionPath();
473 TraceSessionState origState = session.getSessionState();
474
475 // test cases
476 session.setName("newName");
477 assertEquals("newName", session.getName());
cfdb727a 478
eb1bab5b
BH
479 session.setSessionPath("/home/user/tmp");
480 assertEquals("/home/user/tmp", session.getSessionPath());
481
482 session.setSessionState(TraceSessionState.INACTIVE);
483 assertEquals(TraceSessionState.INACTIVE, session.getSessionState());
484 Image inactiveImage = session.getImage();
485 assertNotNull(inactiveImage);
cfdb727a 486
eb1bab5b
BH
487 session.setSessionState("active");
488 assertEquals(TraceSessionState.ACTIVE, session.getSessionState());
489
490 Image activeImage = session.getImage();
491 assertNotNull(activeImage);
492 assertNotSame(activeImage, inactiveImage);
493
4ea599a5
BH
494 ITraceControlComponent[] children = session.getChildren();
495 TraceDomainComponent[] domains = session.getDomains();
496
497 assertEquals(children.length, domains.length);
498
499 for (int i = 0; i < domains.length; i++) {
500 assertEquals(domains[i].getName(), children[i].getName());
501 }
cfdb727a
AM
502
503 // restore original values
eb1bab5b
BH
504 session.setName(name);
505 session.setSessionPath(origPath);
506 session.setSessionState(origState);
507 }
cfdb727a 508
0a78d11a 509 private static void verifyDomainGettersSetters(TraceDomainComponent domain) {
4ea599a5
BH
510 // save original values
511 boolean isKernel = domain.isKernel();
512
513 domain.setIsKernel(false);
514 assertFalse(domain.isKernel());
515 domain.setIsKernel(true);
516 assertTrue(domain.isKernel());
517
518 ITraceControlComponent[] children = domain.getChildren();
519 TraceChannelComponent[] channels = domain.getChannels();
520
521 assertEquals(children.length, channels.length);
522
523 for (int i = 0; i < channels.length; i++) {
524 assertEquals(channels[i].getName(), children[i].getName());
525 }
526
527 String nodeName = domain.getTargetNode().getName();
528 assertEquals(TARGET_NODE_NAME, nodeName);
529
530 // restore original values
531 domain.setIsKernel(isKernel);
532 }
eb1bab5b 533
0a78d11a 534 private static void verifyBaseEventGettersSetters(BaseEventComponent event) {
eb1bab5b
BH
535 // save original values
536 String name = event.getName();
537 TraceLogLevel level = event.getLogLevel();
538 TraceEventType type = event.getEventType();
cfdb727a 539
eb1bab5b
BH
540 // test cases
541 event.setName("newName");
542 assertEquals("newName", event.getName());
cfdb727a 543
eb1bab5b
BH
544 event.setLogLevel(TraceLogLevel.TRACE_INFO);
545 assertEquals(TraceLogLevel.TRACE_INFO, event.getLogLevel());
4775bcbf 546 event.setLogLevel("TRACE_ALERT");
eb1bab5b
BH
547 assertEquals(TraceLogLevel.TRACE_ALERT, event.getLogLevel());
548
549 event.setEventType(TraceEventType.UNKNOWN);
550 assertEquals(TraceEventType.UNKNOWN, event.getEventType());
551 event.setEventType("tracepoint");
552 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
cfdb727a 553
eb1bab5b
BH
554 // restore original values
555 event.setName(name);
556 event.setLogLevel(level);
557 event.setEventType(type);
558 }
cfdb727a 559
0a78d11a 560 private static void verifyEventGettersSetters(TraceEventComponent event) {
eb1bab5b
BH
561 // save original values
562 String name = event.getName();
563 TraceLogLevel level = event.getLogLevel();
564 TraceEventType type = event.getEventType();
565 TraceEnablement state = event.getState();
cfdb727a 566
eb1bab5b
BH
567 // test cases
568 event.setName("newName");
569 assertEquals("newName", event.getName());
cfdb727a 570
eb1bab5b
BH
571 event.setLogLevel(TraceLogLevel.TRACE_INFO);
572 assertEquals(TraceLogLevel.TRACE_INFO, event.getLogLevel());
4775bcbf 573 event.setLogLevel("TRACE_ALERT");
eb1bab5b
BH
574 assertEquals(TraceLogLevel.TRACE_ALERT, event.getLogLevel());
575
576 event.setEventType(TraceEventType.UNKNOWN);
577 assertEquals(TraceEventType.UNKNOWN, event.getEventType());
578 event.setEventType("tracepoint");
579 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
cfdb727a 580
eb1bab5b
BH
581 event.setState("disabled");
582 assertEquals(TraceEnablement.DISABLED, event.getState());
cfdb727a 583
eb1bab5b
BH
584 Image disabledImage = event.getImage();
585 assertNotNull(disabledImage);
586
587 event.setState(TraceEnablement.ENABLED);
588 assertEquals(TraceEnablement.ENABLED, event.getState());
589
590 Image enabledImage = event.getImage();
591 assertNotNull(enabledImage);
592 assertNotSame(enabledImage, disabledImage);
593
594 // restore original values
595 event.setName(name);
596 event.setLogLevel(level);
597 event.setEventType(type);
598 event.setState(state);
599 }
cfdb727a 600
0a78d11a 601 private static void verifyProbeEventGettersSetters(TraceProbeEventComponent event) {
4ea599a5
BH
602 // save original values
603 String address = event.getAddress();
604 String offset = event.getOffset();
605 String symbol = event.getSymbol();
cfdb727a 606
4ea599a5
BH
607 // test cases
608 event.setAddress("0xffff1234");
609 assertEquals("0xffff1234", event.getAddress());
cfdb727a 610
4ea599a5
BH
611 event.setOffset("0x1234");
612 assertEquals("0x1234", event.getOffset());
cfdb727a 613
4ea599a5
BH
614 event.setSymbol("init");
615 assertEquals("init", event.getSymbol());
cfdb727a 616
4ea599a5
BH
617 // restore original values
618 event.setAddress(address);
619 event.setOffset(offset);
620 event.setSymbol(symbol);
621 }
cfdb727a 622
0a78d11a 623 private static void verifyChannelGettersSetters(TraceChannelComponent channel) {
eb1bab5b
BH
624 // save original values
625 String name = channel.getName();
626 int nbSubBuffers = channel.getNumberOfSubBuffers();
0ad9fc89 627 TraceChannelOutputType type = channel.getOutputType();
eb1bab5b
BH
628 boolean mode = channel.isOverwriteMode();
629 long readTimer = channel.getReadTimer();
630 TraceEnablement state = channel.getState();
631 long subBufferSize = channel.getSubBufferSize();
632 long switchTimer = channel.getSwitchTimer();
cfdb727a 633
eb1bab5b
BH
634 // test cases
635 channel.setName("newName");
636 assertEquals("newName", channel.getName());
cfdb727a 637
eb1bab5b
BH
638 channel.setNumberOfSubBuffers(2);
639 assertEquals(2, channel.getNumberOfSubBuffers());
cfdb727a 640
eb1bab5b 641 channel.setOutputType("splice()");
0ad9fc89
JRJ
642 assertEquals("splice()", channel.getOutputType().getInName());
643 assertEquals(TraceChannelOutputType.SPLICE, channel.getOutputType());
cfdb727a 644
eb1bab5b
BH
645 channel.setOverwriteMode(false);
646 assertEquals(false, channel.isOverwriteMode());
cfdb727a 647
eb1bab5b
BH
648 channel.setReadTimer(250);
649 assertEquals(250, channel.getReadTimer());
cfdb727a 650
eb1bab5b
BH
651 channel.setState("enabled");
652 assertEquals(TraceEnablement.ENABLED, channel.getState());
cfdb727a 653
eb1bab5b
BH
654 Image enabledImage = channel.getImage();
655 assertNotNull(enabledImage);
656 channel.setState(TraceEnablement.DISABLED);
657 assertEquals(TraceEnablement.DISABLED, channel.getState());
658
659 Image disabledImage = channel.getImage();
660 assertNotNull(disabledImage);
661 assertNotSame(enabledImage, disabledImage);
cfdb727a 662
eb1bab5b
BH
663 channel.setSubBufferSize(1024);
664 assertEquals(1024, channel.getSubBufferSize());
cfdb727a 665
eb1bab5b
BH
666 channel.setSwitchTimer(1000);
667 assertEquals(1000, channel.getSwitchTimer());
668
669 // restore original values
670 channel.setName(name);
671 channel.setNumberOfSubBuffers(nbSubBuffers);
672 channel.setOutputType(type);
673 channel.setOverwriteMode(mode);
674 channel.setReadTimer(readTimer);
675 channel.setState(state);
676 channel.setSubBufferSize(subBufferSize);
677 channel.setSwitchTimer(switchTimer);
678 }
cfdb727a 679
0a78d11a 680 private static void verifyUstProviderGettersSetters(UstProviderComponent ustProvider) {
eb1bab5b
BH
681 // save original values
682 String name = ustProvider.getName();
683 int pid = ustProvider.getPid();
cfdb727a 684
eb1bab5b
BH
685 // test cases
686 ustProvider.setName("newName");
687 assertEquals("newName", ustProvider.getName());
688
689 ustProvider.setPid(9876);
690 assertEquals(9876, ustProvider.getPid());
cfdb727a 691
eb1bab5b
BH
692 // restore original values
693 ustProvider.setName(name);
694 ustProvider.setPid(pid);
695 }
696
eb1bab5b 697}
This page took 0.084721 seconds and 5 git commands to generate.