tmf: lttngControl: mi: Component and CreateSession tests
authorJonathan Rajotte Julien <jonathan.rajotte-julien@ericsson.com>
Wed, 20 Aug 2014 21:13:47 +0000 (17:13 -0400)
committerBernd Hufmann <bernd.hufmann@ericsson.com>
Wed, 27 Aug 2014 15:35:54 +0000 (11:35 -0400)
Change-Id: I34d0f08bebc08810c99e67a7002a67283bc96c56
Signed-off-by: Jonathan Rajotte Julien <jonathan.rajotte-julien@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/32019
Tested-by: Hudson CI
Reviewed-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
org.eclipse.linuxtools.lttng2.control.ui.tests/src/org/eclipse/linuxtools/lttng2/control/ui/tests/model/component/AllTests.java
org.eclipse.linuxtools.lttng2.control.ui.tests/src/org/eclipse/linuxtools/lttng2/control/ui/tests/model/component/TraceControlComponentTest.java
org.eclipse.linuxtools.lttng2.control.ui.tests/src/org/eclipse/linuxtools/lttng2/control/ui/tests/model/component/TraceControlCreateSessionMiTests.java [new file with mode: 0644]
org.eclipse.linuxtools.lttng2.control.ui.tests/src/org/eclipse/linuxtools/lttng2/control/ui/tests/model/component/TraceControlCreateSessionTests.java
org.eclipse.linuxtools.lttng2.control.ui.tests/testfiles/CreateSessionTestMi.cfg [new file with mode: 0644]

index 4000217747f223240d48ca52ed26652a712028cd..5ae2c88ac0b021e1c469eef29df13727a27afdf7 100644 (file)
@@ -23,6 +23,7 @@ import org.junit.runners.Suite;
 @Suite.SuiteClasses({
     TraceControlComponentTest.class,
     TraceControlCreateSessionTests.class,
+    TraceControlCreateSessionMiTests.class,
     TraceControlKernelProviderTests.class,
     TraceControlKernelSessionTests.class,
     TraceControlPropertiesTest.class,
index 785a19981cc113c147ab27ab603ba42164f3d184..74d4b1e43939be9dee9a0ff5ff185fe89a94783a 100644 (file)
@@ -31,6 +31,8 @@ import org.eclipse.linuxtools.internal.lttng2.control.ui.views.model.impl.TraceC
 import org.eclipse.linuxtools.internal.lttng2.control.ui.views.model.impl.TraceControlRoot;
 import org.eclipse.linuxtools.internal.lttng2.control.ui.views.service.ILttngControlService;
 import org.eclipse.linuxtools.internal.lttng2.control.ui.views.service.LTTngControlService;
+import org.eclipse.linuxtools.internal.lttng2.control.ui.views.service.LTTngControlServiceConstants;
+import org.eclipse.linuxtools.internal.lttng2.control.ui.views.service.LTTngControlServiceMI;
 import org.eclipse.swt.graphics.Image;
 import org.eclipse.ui.ISharedImages;
 import org.eclipse.ui.PlatformUI;
@@ -271,6 +273,12 @@ public class TraceControlComponentTest {
         assertNotNull(service);
         assertEquals(service, result);
 
+        service = new LTTngControlServiceMI(proxy.createCommandShell(), LTTngControlServiceMI.class.getResource(LTTngControlServiceConstants.MI_XSD_FILENAME));
+        fixture.setControlService(service);
+        result = fixture.getControlService();
+        assertNotNull(service);
+        assertEquals(service, result);
+
         result = fixture.getChildren()[0].getControlService();
         assertNotNull(service);
         assertEquals(service, result);
diff --git a/org.eclipse.linuxtools.lttng2.control.ui.tests/src/org/eclipse/linuxtools/lttng2/control/ui/tests/model/component/TraceControlCreateSessionMiTests.java b/org.eclipse.linuxtools.lttng2.control.ui.tests/src/org/eclipse/linuxtools/lttng2/control/ui/tests/model/component/TraceControlCreateSessionMiTests.java
new file mode 100644 (file)
index 0000000..bb287f1
--- /dev/null
@@ -0,0 +1,27 @@
+/**********************************************************************
+ * Copyright (c) 2014 Ericsson
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v1.0 which
+ * accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *   Jonathan Rajotte - Support for machine interface LTTng 2.6
+ **********************************************************************/
+
+package org.eclipse.linuxtools.lttng2.control.ui.tests.model.component;
+
+/**
+ * Machine interface Kernel session manipulation handling test cases.
+ * LTTng 2.6
+ */
+public class TraceControlCreateSessionMiTests extends TraceControlCreateSessionTests {
+
+    private static final String TEST_STREAM = "CreateSessionTestMi.cfg";
+
+    @Override
+    protected String getTestStream() {
+        return TEST_STREAM;
+    }
+}
index 4ff93b0ad8dd8efb9238019da16d57297edae521..50611ca5a2944e9297e479e61e9dbb58242c54b0 100644 (file)
@@ -1,5 +1,5 @@
 /**********************************************************************
- * Copyright (c) 2013 Ericsson
+ * Copyright (c) 2013, 2014 Ericsson
  *
  * All rights reserved. This program and the accompanying materials are
  * made available under the terms of the Eclipse Public License v1.0 which
@@ -8,7 +8,9 @@
  *
  * Contributors:
  *   Bernd Hufmann - Initial API and implementation
+ *   Jonathan Rajotte - Support for LTTng 2.6
  **********************************************************************/
+
 package org.eclipse.linuxtools.lttng2.control.ui.tests.model.component;
 
 import static org.junit.Assert.assertEquals;
@@ -29,6 +31,7 @@ import org.eclipse.linuxtools.internal.lttng2.control.ui.views.dialogs.TraceCont
 import org.eclipse.linuxtools.internal.lttng2.control.ui.views.model.ITraceControlComponent;
 import org.eclipse.linuxtools.internal.lttng2.control.ui.views.model.impl.TargetNodeComponent;
 import org.eclipse.linuxtools.internal.lttng2.control.ui.views.model.impl.TraceSessionComponent;
+import org.eclipse.linuxtools.internal.lttng2.control.ui.views.service.ILttngControlService;
 import org.eclipse.rse.core.RSECorePlugin;
 import org.eclipse.rse.core.model.IHost;
 import org.eclipse.rse.core.model.ISystemProfile;
@@ -39,11 +42,9 @@ import org.junit.Test;
 import org.osgi.framework.FrameworkUtil;
 
 /**
- * The class <code>TraceControlKernelSessionTests</code> contains Kernel session/channel/event
- * handling test cases.
+ * The class {@link TraceControlKernelSessionTests} contains Kernel
+ * session/channel/event handling test cases.
  */
-
-@SuppressWarnings("javadoc")
 public class TraceControlCreateSessionTests {
 
     // ------------------------------------------------------------------------
@@ -55,6 +56,8 @@ public class TraceControlCreateSessionTests {
     private static final String SCEN_SCENARIO_NETWORK_TEST = "CreateSessionNetwork";
     private static final String SCEN_SCENARIO_NETWORK2_TEST = "CreateSessionNetwork2";
 
+    private static final String SESSION = "mysession";
+
     // ------------------------------------------------------------------------
     // Test data
     // ------------------------------------------------------------------------
@@ -70,25 +73,29 @@ public class TraceControlCreateSessionTests {
      * Perform pre-test initialization.
      *
      * @throws Exception
-     *         if the initialization fails for some reason
-     *
+     *             if the initialization fails for some reason
      */
     @Before
     public void setUp() throws Exception {
         fFacility = TraceControlTestFacility.getInstance();
         fFacility.init();
         fProxy = new TestRemoteSystemProxy();
-        URL location = FileLocator.find(FrameworkUtil.getBundle(this.getClass()), new Path(TraceControlTestFacility.DIRECTORY + File.separator + TEST_STREAM), null);
+        URL location = FileLocator.find(FrameworkUtil.getBundle(this.getClass()), new Path(TraceControlTestFacility.DIRECTORY + File.separator + getTestStream()), null);
         File testfile = new File(FileLocator.toFileURL(location).toURI());
         fTestFile = testfile.getAbsolutePath();
     }
 
     /**
-     * Perform post-test clean-up.
-     *
-     * @throws Exception
-     *         if the clean-up fails for some reason
+     * Get the test stream file name to use for the test suite
      *
+     * @return the name of the test stream file
+     */
+    protected String getTestStream() {
+        return TEST_STREAM;
+    }
+
+    /**
+     * Perform post-test clean-up.
      */
     @After
     public void tearDown() {
@@ -97,6 +104,9 @@ public class TraceControlCreateSessionTests {
 
     /**
      * Run the TraceControlComponent.
+     *
+     * @throws Exception
+     *             on internal error
      */
     @Test
     public void testTraceSessionTree() throws Exception {
@@ -107,7 +117,7 @@ public class TraceControlCreateSessionTests {
         ITraceControlComponent root = TraceControlTestFacility.getInstance().getControlView().getTraceControlRoot();
 
         ISystemRegistry registry = RSECorePlugin.getTheSystemRegistry();
-        ISystemProfile profile =  registry.createSystemProfile("myProfile", true);
+        ISystemProfile profile = registry.createSystemProfile("myProfile", true);
         IHost host = registry.createLocalHost(profile, "myProfile", "user");
 
         TargetNodeComponent node = new TargetNodeComponent("myNode", root, host, fProxy);
@@ -125,6 +135,8 @@ public class TraceControlCreateSessionTests {
         // Verify that node is connected
         assertEquals(TargetNodeState.CONNECTED, node.getTargetNodeState());
 
+        ILttngControlService controleService = node.getControlService();
+
         // Get provider groups
         ITraceControlComponent[] groups = node.getChildren();
         assertNotNull(groups);
@@ -147,8 +159,13 @@ public class TraceControlCreateSessionTests {
 
         // Verify that session was created
         assertNotNull(session);
-        assertEquals("mysession", session.getName());
-        assertEquals("file:///tmp", session.getSessionPath());
+        assertEquals(getSessionName(), session.getName());
+        if (controleService.isVersionSupported("2.6.0")) {
+            assertEquals("/tmp", session.getSessionPath());
+        } else {
+            assertEquals("file:///tmp", session.getSessionPath());
+        }
+
         assertTrue(!session.isStreamedTrace());
         assertEquals(TraceSessionState.INACTIVE, session.getSessionState());
         sessionDialogStub.setNetworkUrl(null);
@@ -173,8 +190,12 @@ public class TraceControlCreateSessionTests {
 
         // Verify that session was created
         assertNotNull(session);
-        assertEquals("mysession", session.getName());
-        assertEquals("tcp://172.0.0.1:5342 [data: 5343]", session.getSessionPath());
+        assertEquals(getSessionName(), session.getName());
+        if (controleService.isVersionSupported("2.6.0")) {
+            assertEquals("tcp4://172.0.0.1:5342/ [data: 5343]", session.getSessionPath());
+        } else {
+            assertEquals("tcp://172.0.0.1:5342 [data: 5343]", session.getSessionPath());
+        }
         assertTrue(session.isStreamedTrace());
         assertEquals(TraceSessionState.INACTIVE, session.getSessionState());
         sessionDialogStub.setControlUrl(null);
@@ -199,8 +220,12 @@ public class TraceControlCreateSessionTests {
 
         // Verify that session was created
         assertNotNull(session);
-        assertEquals("mysession", session.getName());
-        assertEquals("net://172.0.0.1:1234 [data: 2345]", session.getSessionPath());
+        assertEquals(getSessionName(), session.getName());
+        if (controleService.isVersionSupported("2.6.0")) {
+            assertEquals("tcp4://172.0.0.1:1234/mysession-20140820-153527 [data: 2345]", session.getSessionPath());
+        } else {
+            assertEquals("net://172.0.0.1:1234 [data: 2345]", session.getSessionPath());
+        }
         assertTrue(session.isStreamedTrace());
         assertEquals(TraceSessionState.INACTIVE, session.getSessionState());
         sessionDialogStub.setNetworkUrl(null);
@@ -223,8 +248,12 @@ public class TraceControlCreateSessionTests {
 
         // Verify that session was created
         assertNotNull(session);
-        assertEquals("mysession", session.getName());
-        assertEquals("net://[ffff::eeee:dddd:cccc:0]:5342/mysession-20130221-144451 [data: 5343]", session.getSessionPath());
+        assertEquals(getSessionName(), session.getName());
+        if (controleService.isVersionSupported("2.6.0")) {
+            assertEquals("tcp6://[ffff::eeee:dddd:cccc:0]:5342/mysession-20140820-153801 [data: 5343]", session.getSessionPath());
+        } else {
+            assertEquals("net://[ffff::eeee:dddd:cccc:0]:5342/mysession-20130221-144451 [data: 5343]", session.getSessionPath());
+        }
         assertTrue(session.isStreamedTrace());
         assertEquals(TraceSessionState.INACTIVE, session.getSessionState());
         sessionDialogStub.setNetworkUrl(null);
@@ -234,19 +263,22 @@ public class TraceControlCreateSessionTests {
         // Verify that no more session components exist
         assertEquals(0, groups[1].getChildren().length);
 
-
-        //-------------------------------------------------------------------------
+        // -------------------------------------------------------------------------
         // Disconnect node
-        //-------------------------------------------------------------------------
+        // -------------------------------------------------------------------------
         fFacility.executeCommand(node, "disconnect");
         assertEquals(TargetNodeState.DISCONNECTED, node.getTargetNodeState());
 
-        //-------------------------------------------------------------------------
+        // -------------------------------------------------------------------------
         // Delete node
-        //-------------------------------------------------------------------------
+        // -------------------------------------------------------------------------
 
         fFacility.executeCommand(node, "delete");
-        assertEquals(0,fFacility.getControlView().getTraceControlRoot().getChildren().length);
+        assertEquals(0, fFacility.getControlView().getTraceControlRoot().getChildren().length);
+    }
+
+    private static String getSessionName() {
+        return SESSION;
     }
 
 }
diff --git a/org.eclipse.linuxtools.lttng2.control.ui.tests/testfiles/CreateSessionTestMi.cfg b/org.eclipse.linuxtools.lttng2.control.ui.tests/testfiles/CreateSessionTestMi.cfg
new file mode 100644 (file)
index 0000000..b841a5c
--- /dev/null
@@ -0,0 +1,528 @@
+####################################################################
+# Copyright (c) 2014 Ericsson
+#
+# All rights reserved. This program and the accompanying materials are
+# made available under the terms of the Eclipse Public License v1.0 which
+# accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+#    Jonathan Rajotte - Initial API and implementation
+####################################################################
+####################################################################
+# Scenario: Initialize
+####################################################################
+<SCENARIO>
+Initialize
+<COMMAND_INPUT>
+lttng --mi xml version 
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>version</name>
+  <output>
+    <version>
+      <string>2.6.0</string>
+      <major>2</major>
+      <minor>6</minor>
+      <commit></commit>
+      <patchLevel>0</patchLevel>
+      <name>TestMI</name>
+      <description>Lorem ipsum</description>
+      <url>http://lttng.org</url>
+      <license>lttng is free software and under the GPL license and part LGPL</license>
+    </version>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list 
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <sessions/>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list -k
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <domains>
+      <domain>
+        <type>KERNEL</type>
+        <buffer_type>PER_PID</buffer_type>
+        <events>
+          <event>
+            <name>sched_kthread_stop</name>
+            <type>TRACEPOINT</type>
+            <enabled>true</enabled>
+            <filter>false</filter>
+            <loglevel>TRACE_EMERG</loglevel>
+            <loglevel_type>ALL</loglevel_type>
+            <exclusion>false</exclusion>
+          </event>
+          <event>
+            <name>sched_kthread_stop_ret</name>
+            <type>TRACEPOINT</type>
+            <enabled>true</enabled>
+            <filter>false</filter>
+            <loglevel>TRACE_EMERG</loglevel>
+            <loglevel_type>ALL</loglevel_type>
+            <exclusion>false</exclusion>
+          </event>
+          <event>
+            <name>sched_wakeup_new</name>
+            <type>TRACEPOINT</type>
+            <enabled>true</enabled>
+            <filter>false</filter>
+            <loglevel>TRACE_EMERG</loglevel>
+            <loglevel_type>ALL</loglevel_type>
+            <exclusion>false</exclusion>
+          </event>
+        </events>
+      </domain>
+    </domains>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list -u -f 
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <domains>
+      <domain>
+        <type>UST</type>
+        <buffer_type>PER_PID</buffer_type>
+        <pids>
+          <pid>
+            <id>9379</id>
+            <name>/home/user/git/lttng-ust/tests/hello.cxx/.libs/lt-hello</name>
+            <events>
+              <event>
+                <name>ust_tests_hello:tptest_sighandler</name>
+                <type>TRACEPOINT</type>
+                <enabled>true</enabled>
+                <filter>false</filter>
+                <loglevel>TRACE_DEBUG_MODULE</loglevel>
+                <loglevel_type>ALL</loglevel_type>
+                <exclusion>false</exclusion>
+                <event_fields/>
+              </event>
+              <event>
+                <name>ust_tests_hello:tptest</name>
+                <type>TRACEPOINT</type>
+                <enabled>true</enabled>
+                <filter>false</filter>
+                <loglevel>TRACE_INFO</loglevel>
+                <loglevel_type>ALL</loglevel_type>
+                <exclusion>false</exclusion>
+                <event_fields>
+                  <event_field>
+                    <name>doublefield</name>
+                    <type>FLOAT</type>
+                    <nowrite>0</nowrite>
+                  </event_field>
+                  <event_field>
+                    <name>floatfield</name>
+                    <type>FLOAT</type>
+                    <nowrite>0</nowrite>
+                  </event_field>
+                  <event_field>
+                    <name>stringfield</name>
+                    <type>STRING</type>
+                    <nowrite>0</nowrite>
+                  </event_field>
+                </event_fields>
+              </event>
+            </events>
+          </pid>
+          <pid>
+            <id>4852</id>
+            <name>/home/user/git/lttng-ust/tests/hello.cxx/.libs/lt-hello</name>
+            <events>
+              <event>
+                <name>ust_tests_hello:tptest_sighandler</name>
+                <type>TRACEPOINT</type>
+                <enabled>true</enabled>
+                <filter>false</filter>
+                <loglevel>TRACE_WARNING</loglevel>
+                <loglevel_type>ALL</loglevel_type>
+                <exclusion>false</exclusion>
+                <event_fields/>
+              </event>
+              <event>
+                <name>ust_tests_hello:tptest</name>
+                <type>TRACEPOINT</type>
+                <enabled>true</enabled>
+                <filter>false</filter>
+                <loglevel>TRACE_DEBUG_FUNCTION</loglevel>
+                <loglevel_type>ALL</loglevel_type>
+                <exclusion>false</exclusion>
+                <event_fields>
+                  <event_field>
+                    <name>doublefield</name>
+                    <type>FLOAT</type>
+                    <nowrite>0</nowrite>
+                  </event_field>
+                  <event_field>
+                    <name>floatfield</name>
+                    <type>FLOAT</type>
+                    <nowrite>0</nowrite>
+                  </event_field>
+                  <event_field>
+                    <name>stringfield</name>
+                    <type>STRING</type>
+                    <nowrite>0</nowrite>
+                  </event_field>
+                </event_fields>
+              </event>
+            </events>
+          </pid>
+        </pids>
+      </domain>
+    </domains>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+</SCENARIO>
+
+####################################################################
+# Scenario: Test "lttng create <session> with LTTng 2.1 options  
+####################################################################
+##################################################################
+<SCENARIO>
+CreateSessionFileProto
+<COMMAND_INPUT>
+lttng --mi xml create mysession -U file:///tmp
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>create</name>
+  <output>
+    <session>
+      <name>mysession</name>
+      <path>/tmp</path>
+      <enabled>false</enabled>
+      <snapshot_mode>0</snapshot_mode>
+      <live_timer_interval>0</live_timer_interval>
+    </session>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>/tmp</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+        <domains/>
+      </session>
+    </sessions>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml destroy mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>destroy</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>/tmp</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+      </session>
+    </sessions>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+</SCENARIO>
+
+##################################################################
+<SCENARIO>
+CreateSessionControlData
+<COMMAND_INPUT>
+lttng --mi xml create mysession -C tcp://172.0.0.1 -D tcp://172.0.0.1:5343
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>create</name>
+  <output>
+    <session>
+      <name>mysession</name>
+      <path>tcp4://172.0.0.1:5342/ [data: 5343]</path>
+      <enabled>false</enabled>
+      <snapshot_mode>0</snapshot_mode>
+      <live_timer_interval>0</live_timer_interval>
+    </session>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>tcp4://172.0.0.1:5342/ [data: 5343]</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+        <domains/>
+      </session>
+    </sessions>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml destroy mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>destroy</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>tcp4://172.0.0.1:5342/ [data: 5343]</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+      </session>
+    </sessions>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+</SCENARIO>
+
+##################################################################
+<SCENARIO>
+CreateSessionNetwork
+<COMMAND_INPUT>
+lttng --mi xml create mysession -U net://172.0.0.1:1234:2345
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>create</name>
+  <output>
+    <session>
+      <name>mysession</name>
+      <path>tcp4://172.0.0.1:1234/mysession-20140820-153527 [data: 2345]</path>
+      <enabled>false</enabled>
+      <snapshot_mode>0</snapshot_mode>
+      <live_timer_interval>0</live_timer_interval>
+    </session>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>tcp4://172.0.0.1:1234/mysession-20140820-153527 [data: 2345]</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+        <domains/>
+      </session>
+    </sessions>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml destroy mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>destroy</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>tcp4://172.0.0.1:1234/mysession-20140820-153527 [data: 2345]</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+      </session>
+    </sessions>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+
+</SCENARIO>
+
+##################################################################
+<SCENARIO>
+CreateSessionNetwork2
+<COMMAND_INPUT>
+lttng --mi xml create mysession -U net6://[ffff::eeee:dddd:cccc:0]
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>create</name>
+  <output>
+    <session>
+      <name>mysession</name>
+      <path>tcp6://[ffff::eeee:dddd:cccc:0]:5342/mysession-20140820-153801 [data: 5343]</path>
+      <enabled>false</enabled>
+      <snapshot_mode>0</snapshot_mode>
+      <live_timer_interval>0</live_timer_interval>
+    </session>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml list mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>list</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>tcp6://[ffff::eeee:dddd:cccc:0]:5342/mysession-20140820-153801 [data: 5343]</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+        <domains/>
+      </session>
+    </sessions>
+  </output>
+</command>
+</COMMAND_OUTPUT>
+
+<COMMAND_INPUT>
+lttng --mi xml destroy mysession
+</COMMAND_INPUT>
+<COMMAND_RESULT>
+0
+</COMMAND_RESULT>
+<COMMAND_OUTPUT>
+<?xml version="1.0" encoding="UTF-8"?>
+<command>
+  <name>destroy</name>
+  <output>
+    <sessions>
+      <session>
+        <name>mysession</name>
+        <path>tcp6://[ffff::eeee:dddd:cccc:0]:5342/mysession-20140820-153801 [data: 5343]</path>
+        <enabled>false</enabled>
+        <snapshot_mode>0</snapshot_mode>
+        <live_timer_interval>0</live_timer_interval>
+      </session>
+    </sessions>
+  </output>
+  <success>true</success>
+</command>
+</COMMAND_OUTPUT>
+
+</SCENARIO>
\ No newline at end of file
This page took 0.03325 seconds and 5 git commands to generate.