bt2: add `_Trace.cls` property
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Thu, 6 Jun 2019 23:06:11 +0000 (19:06 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Sat, 8 Jun 2019 00:38:02 +0000 (20:38 -0400)
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Change-Id: I0669de442d91da7b188a02d633e1fad15fc5814c
Reviewed-on: https://review.lttng.org/c/babeltrace/+/1395
Reviewed-by: Simon Marchi <simon.marchi@efficios.com>
bindings/python/bt2/bt2/trace.py
tests/bindings/python/bt2/test_trace.py

index 47dab8f73fd65b9e188e5fd7def41a9f9faf3362..5830ec3f8bc0b694dc3a1d081aae9fd5a9e1bad6 100644 (file)
@@ -25,6 +25,7 @@ import bt2.field_class
 import collections.abc
 import bt2.value
 import bt2.stream
+import bt2.trace_class
 import bt2
 import functools
 
@@ -63,6 +64,12 @@ class _Trace(object._SharedObject, collections.abc.Mapping):
 
             yield id
 
+    @property
+    def cls(self):
+        trace_class_ptr = native_bt.trace_borrow_class(self._ptr)
+        assert trace_class_ptr is not None
+        return bt2.trace_class._TraceClass._create_from_ptr_and_get_ref(trace_class_ptr)
+
     @property
     def name(self):
         return native_bt.trace_get_name(self._ptr)
index 6902924481f3c796b9afcaba226a29ace6e6a628..f3602c25348035316df3c06d8ee3cd17057c05c1 100644 (file)
@@ -18,6 +18,10 @@ class TraceTestCase(unittest.TestCase):
         with self.assertRaises(TypeError):
             self._tc(name=17)
 
+    def test_attr_trace_class(self):
+        trace = self._tc(name='my name')
+        self.assertEqual(trace.cls.addr, self._tc.addr)
+
     def test_len(self):
         trace = self._tc()
         sc = self._tc.create_stream_class()
This page took 0.025459 seconds and 4 git commands to generate.