tmf: Bug 460842: Introduce tmf remote plug-ins and feature
[deliverable/tracecompass.git] / org.eclipse.tracecompass.lttng2.control.ui.tests / src / org / eclipse / tracecompass / lttng2 / control / ui / tests / model / component / TraceControlUstSessionTests.java
CommitLineData
a26d90be 1/**********************************************************************
533d0bc3 2 * Copyright (c) 2012, 2015 Ericsson
cfdb727a 3 *
a26d90be
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:
a26d90be 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
a26d90be 13 **********************************************************************/
2ba3d0a1 14
9bc60be7 15package org.eclipse.tracecompass.lttng2.control.ui.tests.model.component;
a26d90be 16
b732adaa
MS
17import static org.junit.Assert.assertEquals;
18import static org.junit.Assert.assertNotNull;
19import static org.junit.Assert.assertTrue;
2ba3d0a1 20
a26d90be
BH
21import java.io.File;
22import java.net.URL;
23import java.util.ArrayList;
24import java.util.List;
25
a26d90be
BH
26import org.eclipse.core.runtime.FileLocator;
27import org.eclipse.core.runtime.Path;
b732adaa 28import org.eclipse.remote.core.IRemoteConnection;
9bc60be7
AM
29import org.eclipse.tracecompass.internal.lttng2.control.core.model.LogLevelType;
30import org.eclipse.tracecompass.internal.lttng2.control.core.model.TargetNodeState;
31import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceChannelOutputType;
32import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceEnablement;
33import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceEventType;
34import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceLogLevel;
35import org.eclipse.tracecompass.internal.lttng2.control.core.model.TraceSessionState;
36import org.eclipse.tracecompass.internal.lttng2.control.core.model.impl.BufferType;
37import org.eclipse.tracecompass.internal.lttng2.control.core.model.impl.ChannelInfo;
38import org.eclipse.tracecompass.internal.lttng2.control.stubs.dialogs.CreateSessionDialogStub;
39import org.eclipse.tracecompass.internal.lttng2.control.stubs.dialogs.DestroyConfirmDialogStub;
40import org.eclipse.tracecompass.internal.lttng2.control.stubs.dialogs.EnableChannelDialogStub;
41import org.eclipse.tracecompass.internal.lttng2.control.stubs.dialogs.EnableEventsDialogStub;
42import org.eclipse.tracecompass.internal.lttng2.control.stubs.dialogs.GetEventInfoDialogStub;
43import org.eclipse.tracecompass.internal.lttng2.control.stubs.service.TestRemoteSystemProxy;
44import org.eclipse.tracecompass.internal.lttng2.control.ui.views.dialogs.TraceControlDialogFactory;
45import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.ITraceControlComponent;
46import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TargetNodeComponent;
47import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceChannelComponent;
48import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceDomainComponent;
49import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceEventComponent;
50import org.eclipse.tracecompass.internal.lttng2.control.ui.views.model.impl.TraceSessionComponent;
ec619615 51import org.eclipse.tracecompass.tmf.remote.core.proxy.RemoteSystemProxy;
a26d90be
BH
52import org.junit.After;
53import org.junit.Before;
2ba3d0a1 54import org.junit.Test;
9269df72 55import org.osgi.framework.FrameworkUtil;
a26d90be
BH
56
57/**
2ba3d0a1
AM
58 * The class <code>TraceControlUstSessionTests</code> contains UST
59 * session/channel/event handling test cases.
a26d90be 60 */
2ba3d0a1 61public class TraceControlUstSessionTests {
a26d90be
BH
62
63 // ------------------------------------------------------------------------
64 // Constants
65 // ------------------------------------------------------------------------
2ba3d0a1 66
a26d90be
BH
67 private static final String TEST_STREAM = "CreateTreeTest.cfg";
68 private static final String SCEN_SCENARIO4_TEST = "Scenario4";
69
70 // ------------------------------------------------------------------------
71 // Test data
72 // ------------------------------------------------------------------------
2ba3d0a1 73
a26d90be
BH
74 private TraceControlTestFacility fFacility;
75 private TestRemoteSystemProxy fProxy;
cfdb727a
AM
76 private String fTestFile;
77
a26d90be
BH
78 // ------------------------------------------------------------------------
79 // Housekeeping
80 // ------------------------------------------------------------------------
81
82 /**
83 * Perform pre-test initialization.
84 *
85 * @throws Exception
86 * if the initialization fails for some reason
a26d90be 87 */
a26d90be
BH
88 @Before
89 public void setUp() throws Exception {
90 fFacility = TraceControlTestFacility.getInstance();
1c3c5807 91 fFacility.init();
a26d90be 92 fProxy = new TestRemoteSystemProxy();
9269df72 93 URL location = FileLocator.find(FrameworkUtil.getBundle(this.getClass()), new Path(TraceControlTestFacility.DIRECTORY + File.separator + TEST_STREAM), null);
a26d90be
BH
94 File testfile = new File(FileLocator.toFileURL(location).toURI());
95 fTestFile = testfile.getAbsolutePath();
96 }
97
98 /**
99 * Perform post-test clean-up.
a26d90be 100 */
a26d90be 101 @After
2ba3d0a1 102 public void tearDown() {
b957fb8c 103 fFacility.waitForJobs();
1c3c5807 104 fFacility.dispose();
a26d90be 105 }
cfdb727a 106
a26d90be
BH
107 /**
108 * Run the TraceControlComponent.
cfdb727a
AM
109 *
110 * @throws Exception
111 * This will fail the test
a26d90be 112 */
2ba3d0a1 113 @Test
a26d90be 114 public void testTraceSessionTree() throws Exception {
cfdb727a 115
a26d90be
BH
116 fProxy.setTestFile(fTestFile);
117 fProxy.setScenario(TraceControlTestFacility.SCEN_INIT_TEST);
cfdb727a 118
1c3c5807 119 ITraceControlComponent root = fFacility.getControlView().getTraceControlRoot();
a26d90be 120
533d0bc3 121 IRemoteConnection host = RemoteSystemProxy.getLocalConnection();
a26d90be
BH
122
123 TargetNodeComponent node = new TargetNodeComponent("myNode", root, host, fProxy);
124
125 root.addChild(node);
a26d90be
BH
126 fFacility.waitForJobs();
127
b957fb8c
BH
128 fFacility.executeCommand(node, "connect");
129 int i = 0;
130 while ((i < 10) && (node.getTargetNodeState() != TargetNodeState.CONNECTED)) {
131 i++;
132 fFacility.delay(TraceControlTestFacility.GUI_REFESH_DELAY);
133 }
a26d90be
BH
134
135 // Get provider groups
136 ITraceControlComponent[] groups = node.getChildren();
137 assertNotNull(groups);
138 assertEquals(2, groups.length);
139
140 // Initialize dialog implementations for command execution
141 TraceControlDialogFactory.getInstance().setCreateSessionDialog(new CreateSessionDialogStub());
142 TraceControlDialogFactory.getInstance().setGetEventInfoDialog(new GetEventInfoDialogStub());
143 TraceControlDialogFactory.getInstance().setConfirmDialog(new DestroyConfirmDialogStub());
144
145 // Initialize session handling scenario
146 fProxy.setScenario(TraceControlTestFacility.SCEN_SCENARIO_SESSION_HANDLING);
cfdb727a 147
a26d90be
BH
148 // ------------------------------------------------------------------------
149 // Create session
150 // ------------------------------------------------------------------------
151 TraceSessionComponent session = fFacility.createSession(groups[1]);
cfdb727a 152
a26d90be
BH
153 // Verify that session was created
154 assertNotNull(session);
155 assertEquals("mysession", session.getName());
156 assertEquals("/home/user/lttng-traces/mysession-20120314-132824", session.getSessionPath());
157 assertEquals(TraceSessionState.INACTIVE, session.getSessionState());
158
159 // Initialize scenario
160 fProxy.setScenario(SCEN_SCENARIO4_TEST);
cfdb727a 161
a26d90be
BH
162 // ------------------------------------------------------------------------
163 // Enable default channel on created session above
164 // ------------------------------------------------------------------------
d62bfa55 165 EnableChannelDialogStub channelStub = new EnableChannelDialogStub();
a26d90be 166 channelStub.setIsKernel(false);
d62bfa55 167 TraceControlDialogFactory.getInstance().setEnableChannelDialog(channelStub);
a26d90be 168
d62bfa55 169 fFacility.executeCommand(session, "enableChannelOnSession");
cfdb727a 170
a26d90be
BH
171 // Verify that Kernel domain was created
172 ITraceControlComponent[] domains = session.getChildren();
173 assertNotNull(domains);
174 assertEquals(1, domains.length);
175
176 assertEquals("UST global", domains[0].getName());
83051fc3 177 assertEquals("Domain buffer Type", BufferType.BUFFER_TYPE_UNKNOWN, ((TraceDomainComponent)domains[0]).getBufferType());
cfdb727a 178
a26d90be
BH
179 // Verify that channel was created with correct data
180 ITraceControlComponent[] channels = domains[0].getChildren();
181 assertNotNull(channels);
182 assertEquals(1, channels.length);
183
184 assertTrue(channels[0] instanceof TraceChannelComponent);
cfdb727a 185 TraceChannelComponent channel = (TraceChannelComponent) channels[0];
a26d90be
BH
186 assertEquals("mychannel", channel.getName());
187 assertEquals(4, channel.getNumberOfSubBuffers());
0ad9fc89
JRJ
188 assertEquals("mmap()", channel.getOutputType().getInName());
189 assertEquals(TraceChannelOutputType.MMAP, channel.getOutputType());
a26d90be
BH
190 assertEquals(true, channel.isOverwriteMode());
191 assertEquals(200, channel.getReadTimer());
192 assertEquals(TraceEnablement.ENABLED, channel.getState());
193 assertEquals(16384, channel.getSubBufferSize());
194 assertEquals(100, channel.getSwitchTimer());
195
196 // ------------------------------------------------------------------------
197 // Enable channel on domain
198 // ------------------------------------------------------------------------
199 ChannelInfo info = (ChannelInfo)channelStub.getChannelInfo();
200 info.setName("mychannel2");
201 info.setOverwriteMode(false);
202 info.setSubBufferSize(32768);
203 info.setNumberOfSubBuffers(2);
204 info.setSwitchTimer(100);
205 info.setReadTimer(200);
206 channelStub.setChannelInfo(info);
cfdb727a 207
d62bfa55 208 fFacility.executeCommand(domains[0], "enableChannelOnDomain");
a26d90be
BH
209
210 // Get Kernel domain component instance
211 domains = session.getChildren();
212 assertNotNull(domains);
213 assertEquals(1, domains.length);
214
215 // Verify that channel was created with correct data
216 channels = domains[0].getChildren();
217 assertNotNull(channels);
218 assertEquals(2, channels.length);
219
220 assertTrue(channels[1] instanceof TraceChannelComponent);
cfdb727a 221 channel = (TraceChannelComponent) channels[1];
a26d90be
BH
222 assertEquals("mychannel2", channel.getName());
223 assertEquals(2, channel.getNumberOfSubBuffers());
0ad9fc89
JRJ
224 assertEquals("mmap()", channel.getOutputType().getInName());
225 assertEquals(TraceChannelOutputType.MMAP, channel.getOutputType());
a26d90be
BH
226 assertEquals(false, channel.isOverwriteMode());
227 assertEquals(200, channel.getReadTimer());
228 assertEquals(TraceEnablement.ENABLED, channel.getState());
229 assertEquals(32768, channel.getSubBufferSize());
230 assertEquals(100, channel.getSwitchTimer());
231
232 // ------------------------------------------------------------------------
233 // Enable event (tracepoint) on session and default channel
234 // ------------------------------------------------------------------------
235 EnableEventsDialogStub eventsDialogStub = new EnableEventsDialogStub();
236 eventsDialogStub.setIsTracePoints(true);
e0838ca1 237 List<String> events = new ArrayList<>();
a26d90be
BH
238 events.add("ust_tests_hello:tptest_sighandler");
239 eventsDialogStub.setNames(events);
240 eventsDialogStub.setIsKernel(false);
241 TraceControlDialogFactory.getInstance().setEnableEventsDialog(eventsDialogStub);
cfdb727a 242
a26d90be 243 fFacility.executeCommand(session, "enableEventOnSession");
cfdb727a 244
a26d90be
BH
245 // Get Kernel domain component instance
246 domains = session.getChildren();
247 assertNotNull(domains);
248 assertEquals(1, domains.length);
249
250 // Verify that channel was created with correct data
251 channels = domains[0].getChildren();
252 assertNotNull(channels);
253 assertEquals(3, channels.length);
254
255 assertTrue(channels[2] instanceof TraceChannelComponent);
cfdb727a 256 channel = (TraceChannelComponent) channels[2];
a26d90be
BH
257 assertEquals("channel0", channel.getName());
258 // No need to check parameters of default channel because that has been done in other tests
259
260 ITraceControlComponent[] channel0Events = channel.getChildren();
261 assertEquals(1, channel0Events.length);
cfdb727a 262
a26d90be
BH
263 assertTrue(channel0Events[0] instanceof TraceEventComponent);
264
265 TraceEventComponent event = (TraceEventComponent) channel0Events[0];
266 assertEquals("ust_tests_hello:tptest_sighandler", event.getName());
267 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel()); // TODO
268 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
269 assertEquals(TraceEnablement.ENABLED, event.getState());
270
271 // ------------------------------------------------------------------------
272 // Enable event (tracepoint) on domain and default channel
273 // ------------------------------------------------------------------------
274 events.clear();
275 events.add("ust_tests_hello:tptest");
276 eventsDialogStub.setNames(events);
cfdb727a 277
a26d90be 278 fFacility.executeCommand(domains[0], "enableEventOnDomain");
cfdb727a 279
a26d90be
BH
280 // Get Kernel domain component instance
281 domains = session.getChildren();
282 assertNotNull(domains);
283 assertEquals(1, domains.length);
284
285 // Verify that channel was created with correct data
286 channels = domains[0].getChildren();
cfdb727a 287 channel = (TraceChannelComponent) channels[2];
a26d90be
BH
288 // No need to check parameters of default channel because that has been done in other tests
289
290 channel0Events = channel.getChildren();
291 assertEquals(2, channel0Events.length);
cfdb727a 292
a26d90be
BH
293 assertTrue(channel0Events[1] instanceof TraceEventComponent);
294
295 event = (TraceEventComponent) channel0Events[1];
296 assertEquals("ust_tests_hello:tptest", event.getName());
297 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel()); // TODO
298 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
299 assertEquals(TraceEnablement.ENABLED, event.getState());
300
301 // ------------------------------------------------------------------------
302 // Enable event (all tracepoints) on specific channel
303 // ------------------------------------------------------------------------
304 events.clear();
305 eventsDialogStub.setNames(events);
306 eventsDialogStub.setIsAllTracePoints(true);
307
308 fFacility.executeCommand(channels[1], "enableEventOnChannel");
309
310 // Get Kernel domain component instance
311 domains = session.getChildren();
312 assertNotNull(domains);
313 assertEquals(1, domains.length);
314
315 // Verify that channel was created with correct data
316 channels = domains[0].getChildren();
cfdb727a 317 channel = (TraceChannelComponent) channels[1];
a26d90be
BH
318 // No need to check parameters of default channel because that has been done in other tests
319
320 channel = (TraceChannelComponent) channels[1];
cfdb727a 321
a26d90be
BH
322 channel0Events = channel.getChildren();
323 assertEquals(1, channel0Events.length);
cfdb727a 324
a26d90be
BH
325 assertTrue(channel0Events[0] instanceof TraceEventComponent);
326
327 event = (TraceEventComponent) channel0Events[0];
328 assertEquals("*", event.getName());
329 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel());
330 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
331 assertEquals(TraceEnablement.ENABLED, event.getState());
332
333 // ------------------------------------------------------------------------
334 // Enable event (wildcard) on specific channel
335 // ------------------------------------------------------------------------
336 events.clear();
cfdb727a 337 eventsDialogStub.setIsTracePoints(false);
a26d90be
BH
338 eventsDialogStub.setIsAllTracePoints(false);
339 eventsDialogStub.setIsWildcard(true);
340 eventsDialogStub.setWildcard("ust*");
341
342 fFacility.executeCommand(channels[0], "enableEventOnChannel");
343
344 // Get Kernel domain component instance
345 domains = session.getChildren();
346 assertNotNull(domains);
347 assertEquals(1, domains.length);
348
349 // Verify that channel was created with correct data
350 channels = domains[0].getChildren();
cfdb727a 351 channel = (TraceChannelComponent) channels[0];
a26d90be
BH
352 // No need to check parameters of default channel because that has been done in other tests
353
354 channel0Events = channel.getChildren();
355 assertEquals(1, channel0Events.length);
cfdb727a 356
a26d90be 357 assertTrue(channel0Events[0] instanceof TraceEventComponent);
cfdb727a 358
a26d90be
BH
359 event = (TraceEventComponent) channel0Events[0];
360 assertEquals("ust*", event.getName());
361 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel());
362 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
363 assertEquals(TraceEnablement.ENABLED, event.getState());
364
365 // ------------------------------------------------------------------------
366 // Enable event (wildcard) on domain
367 // ------------------------------------------------------------------------
368 events.clear();
cfdb727a 369 eventsDialogStub.setIsTracePoints(false);
a26d90be
BH
370 eventsDialogStub.setIsAllTracePoints(false);
371 eventsDialogStub.setIsWildcard(true);
372 eventsDialogStub.setWildcard("ust*");
373
374 fFacility.executeCommand(domains[0], "enableEventOnDomain");
375
376 // Get Kernel domain component instance
377 domains = session.getChildren();
378 assertNotNull(domains);
379 assertEquals(1, domains.length);
380
381 // Verify that channel was created with correct data
382 channels = domains[0].getChildren();
cfdb727a 383 channel = (TraceChannelComponent) channels[0];
a26d90be
BH
384 // No need to check parameters of default channel because that has been done in other tests
385
386 channel0Events = channel.getChildren();
387 assertEquals(1, channel0Events.length);
cfdb727a 388
a26d90be 389 assertTrue(channel0Events[0] instanceof TraceEventComponent);
cfdb727a 390
a26d90be
BH
391 event = (TraceEventComponent) channel0Events[0];
392 assertEquals("ust*", event.getName());
393 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel());
394 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
395 assertEquals(TraceEnablement.ENABLED, event.getState());
396
397 // ------------------------------------------------------------------------
398 // Enable event (wildcard) on session
399 // ------------------------------------------------------------------------
400 events.clear();
cfdb727a 401 eventsDialogStub.setIsTracePoints(false);
a26d90be
BH
402 eventsDialogStub.setIsAllTracePoints(false);
403 eventsDialogStub.setIsWildcard(true);
404 eventsDialogStub.setWildcard("ust*");
405
406 fFacility.executeCommand(domains[0], "enableEventOnDomain");
407
408 // Get Kernel domain component instance
409 domains = session.getChildren();
410 assertNotNull(domains);
411 assertEquals(1, domains.length);
412
413 // Verify that channel was created with correct data
414 channels = domains[0].getChildren();
cfdb727a 415 channel = (TraceChannelComponent) channels[2];
a26d90be
BH
416 // No need to check parameters of default channel because that has been done in other tests
417
418 channel0Events = channel.getChildren();
419 assertEquals(4, channel0Events.length);
cfdb727a 420
a26d90be 421 assertTrue(channel0Events[0] instanceof TraceEventComponent);
cfdb727a 422
a26d90be
BH
423 event = (TraceEventComponent) channel0Events[0];
424 assertEquals("u*", event.getName());
425 assertEquals(TraceLogLevel.LEVEL_UNKNOWN, event.getLogLevel());
426 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
427 assertEquals(TraceEnablement.ENABLED, event.getState());
428
429 // ------------------------------------------------------------------------
430 // Enable event (loglevel) on domain
431 // ------------------------------------------------------------------------
432 events.clear();
433 eventsDialogStub.setIsWildcard(false);
434 eventsDialogStub.setIsLogLevel(true);
435 eventsDialogStub.setLogLevelEventName("myevent1");
436 eventsDialogStub.setLogLevelType(LogLevelType.LOGLEVEL);
437 eventsDialogStub.setLogLevel(TraceLogLevel.TRACE_WARNING);
cfdb727a 438
a26d90be
BH
439 fFacility.executeCommand(domains[0], "enableEventOnDomain");
440
441 // Get Kernel domain component instance
442 domains = session.getChildren();
443 assertNotNull(domains);
444 assertEquals(1, domains.length);
445
446 // Verify that channel was created with correct data
447 channels = domains[0].getChildren();
cfdb727a 448 channel = (TraceChannelComponent) channels[2];
a26d90be
BH
449 // No need to check parameters of default channel because that has been done in other tests
450
451 channel0Events = channel.getChildren();
452 assertEquals(5, channel0Events.length);
cfdb727a 453
a26d90be 454 assertTrue(channel0Events[0] instanceof TraceEventComponent);
cfdb727a 455
a26d90be
BH
456 event = (TraceEventComponent) channel0Events[0];
457 assertEquals("myevent1", event.getName());
458 assertEquals(TraceLogLevel.TRACE_WARNING, event.getLogLevel());
459 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
460 assertEquals(TraceEnablement.ENABLED, event.getState());
461
462 // ------------------------------------------------------------------------
463 // Enable event (loglevel) on session
464 // ------------------------------------------------------------------------
465 eventsDialogStub.setLogLevelEventName("myevent2");
466 eventsDialogStub.setLogLevelType(LogLevelType.LOGLEVEL_ONLY);
467 eventsDialogStub.setLogLevel(TraceLogLevel.TRACE_DEBUG_FUNCTION);
cfdb727a 468
a26d90be 469 fFacility.executeCommand(session, "enableEventOnSession");
cfdb727a 470
a26d90be
BH
471 // Get Kernel domain component instance
472 domains = session.getChildren();
473 assertNotNull(domains);
474 assertEquals(1, domains.length);
475
476 // Verify that channel was created with correct data
477 channels = domains[0].getChildren();
cfdb727a 478 channel = (TraceChannelComponent) channels[2];
a26d90be
BH
479 // No need to check parameters of default channel because that has been done in other tests
480
481 channel0Events = channel.getChildren();
482 assertEquals(6, channel0Events.length);
cfdb727a 483
a26d90be 484 assertTrue(channel0Events[0] instanceof TraceEventComponent);
cfdb727a 485
a26d90be
BH
486 event = (TraceEventComponent) channel0Events[0];
487 assertEquals("myevent2", event.getName());
488 assertEquals(TraceLogLevel.TRACE_DEBUG_FUNCTION, event.getLogLevel());
489 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
490 assertEquals(TraceEnablement.ENABLED, event.getState());
491
492 // ------------------------------------------------------------------------
493 // Enable event (loglevel) on channel
494 // ------------------------------------------------------------------------
495 eventsDialogStub.setLogLevelEventName("myevent0");
496 eventsDialogStub.setLogLevelType(LogLevelType.LOGLEVEL_ONLY);
497 eventsDialogStub.setLogLevel(TraceLogLevel.TRACE_DEBUG_FUNCTION);
cfdb727a 498
a26d90be 499 fFacility.executeCommand(channels[0], "enableEventOnChannel");
cfdb727a 500
a26d90be
BH
501 // Get Kernel domain component instance
502 domains = session.getChildren();
503 assertNotNull(domains);
504 assertEquals(1, domains.length);
505
506 // Verify that channel was created with correct data
507 channels = domains[0].getChildren();
cfdb727a 508 channel = (TraceChannelComponent) channels[0];
a26d90be
BH
509 // No need to check parameters of default channel because that has been done in other tests
510
511 channel0Events = channel.getChildren();
512 assertEquals(2, channel0Events.length);
cfdb727a 513
a26d90be 514 assertTrue(channel0Events[0] instanceof TraceEventComponent);
cfdb727a 515
a26d90be
BH
516 event = (TraceEventComponent) channel0Events[0];
517 assertEquals("myevent0", event.getName());
518 assertEquals(TraceLogLevel.TRACE_DEBUG_FUNCTION, event.getLogLevel());
519 assertEquals(TraceEventType.TRACEPOINT, event.getEventType());
520 assertEquals(TraceEnablement.ENABLED, event.getState());
cfdb727a 521
a26d90be 522 // ------------------------------------------------------------------------
cfdb727a 523 // Destroy session
a26d90be
BH
524 // ------------------------------------------------------------------------
525 // Initialize session handling scenario
526 fProxy.setScenario(TraceControlTestFacility.SCEN_SCENARIO_SESSION_HANDLING);
527
528 fFacility.destroySession(session);
cfdb727a 529
a26d90be 530 // Verify that no more session components exist
cc703e6c 531 assertEquals("Session components still exist.", 0, groups[1].getChildren().length);
a26d90be
BH
532
533 //-------------------------------------------------------------------------
534 // Disconnect node
535 //-------------------------------------------------------------------------
536 fFacility.executeCommand(node, "disconnect");
537 assertEquals(TargetNodeState.DISCONNECTED, node.getTargetNodeState());
538
539 //-------------------------------------------------------------------------
540 // Delete node
541 //-------------------------------------------------------------------------
cfdb727a 542
a26d90be
BH
543 fFacility.executeCommand(node, "delete");
544
cc703e6c 545 assertEquals("Node not deleted.", 0, fFacility.getControlView().getTraceControlRoot().getChildren().length);
a26d90be
BH
546 }
547}
This page took 0.081518 seconds and 5 git commands to generate.