Use LTTNG_TEST_TRACE_FORMAT from env to chose the session trace format
[deliverable/lttng-tools.git] / tests / utils / test_utils.py
index 5e00de494a9cf0e24426d4adb7f1d4eabcc74a51..33b7fd28ada68e1f5a8907e973bbe0efbf6b742b 100644 (file)
@@ -1,19 +1,9 @@
 #!/usr/bin/env python3
 #
-# Copyright (C) 2013 Jérémie Galarneau <jeremie.galarneau@efficios.com>
+# Copyright (C) 2013 Jérémie Galarneau <jeremie.galarneau@efficios.com>
 #
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License, version 2 only, as
-# published by the Free Software Foundation.
+# SPDX-License-Identifier: GPL-2.0-only
 #
-# This program is distributed in the hope that it will be useful, but WITHOUT
-# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
-# more details.
-#
-# You should have received a copy of the GNU General Public License along with
-# this program; if not, write to the Free Software Foundation, Inc., 51
-# Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 
 import uuid
 import os
@@ -32,6 +22,11 @@ sys.path.append(lttng_bindings_path)
 sys.path.append(lttng_bindings_libs_path)
 from lttng import *
 
+BABELTRACE_BIN="babeltrace2"
+trace_format_mapping = {
+        "ctf1" : lttng_trace_format_ctf_1_descriptor_create,
+        "ctf2" : lttng_trace_format_ctf_2_descriptor_create,
+        }
 
 class SessionInfo:
     def __init__(self, handle, session_name, tmp_directory, channel_name):
@@ -48,8 +43,8 @@ def bail(diag, session_info = None):
     if session_info is not None:
         stop_session(session_info, True)
 
-        if os.path.exists(session_info.trace_path):
-            shutil.rmtree(session_info.trace_path)
+        if os.path.exists(session_info.tmp_directory):
+            shutil.rmtree(session_info.tmp_directory)
     exit(-1)
 
 def print_test_result(result, number, description):
@@ -62,6 +57,9 @@ def print_test_result(result, number, description):
     result_string += " {0} - {1}".format(number, description)
     print(result_string)
 
+def skip_test(number, description):
+    print('ok {} # skip {}'.format(number, description))
+
 def enable_ust_tracepoint_event(session_info, event_name):
     event = Event()
     event.name = event_name
@@ -79,9 +77,20 @@ def create_session():
     tmp_directory = tempfile.mkdtemp()
     trace_path = tmp_directory + "/" + session_name
 
-    res = create(session_name, trace_path)
-    if res < 0:
-        bail("Failed to create tracing session.")
+    if 'LTTNG_TEST_TRACE_FORMAT' in os.environ:
+        trace_format_env = os.getenv('LTTNG_TEST_TRACE_FORMAT')
+    else:
+        trace_format_env = 'ctf1'
+
+    trace_format_desc = trace_format_mapping[value]()
+
+    session_descriptor = lttng_session_descriptor_local_create(session_name, trace_path)
+
+    lttng_session_descriptor_set_trace_format_descriptor(session_descriptor, trace_format_desc)
+
+    res = lttng_create_session_ext(session_descriptor)
+    if res != 10:
+        bail("Failed to create recording session.")
 
     channel = Channel()
     channel.name = "channel0"
This page took 0.027938 seconds and 5 git commands to generate.