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