Fix: bt2: read properties on _DiscardedEventsMessage
authorSimon Marchi <simon.marchi@efficios.com>
Sat, 11 Apr 2020 16:17:36 +0000 (12:17 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Tue, 14 Apr 2020 14:20:50 +0000 (10:20 -0400)
Reading the count and clock snapshot properties on a _DiscardedEventsMessage
does not work.  For example, this:

    msg = self._create_discarded_events_message(stream, count=10)
    print(msg.count)

Results in:

      File "test.py", line 10, in __init__
        print(msg.count)
      File "/home/simark/build/babeltrace/src/bindings/python/bt2/build/build_lib/bt2/message.py", line 208, in count
        avail, count = self._get_count(self._ptr)
    AttributeError: '_DiscardedEventsMessage' object has no attribute '_get_count'

The problem is simply that _DiscardedEventsMessage is missing inheriting
from _DiscardedEventsMessageConst.

Change-Id: Id40ea54bb26b4e4aec264d84bda52ed815090341
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/3392
Tested-by: jenkins <jenkins@lttng.org>
Reviewed-by: Philippe Proulx <eeppeliteloop@gmail.com>
src/bindings/python/bt2/bt2/message.py
tests/bindings/python/bt2/test_message.py

index 80c5db432795c4bf2003919f69b2d6adeb5daf88..95522736c490a980ea922a75db5cf9ded6bcd54d 100644 (file)
@@ -255,7 +255,7 @@ class _DiscardedEventsMessageConst(_DiscardedMessageConst):
         return self.stream.cls.discarded_events_have_default_clock_snapshots
 
 
-class _DiscardedEventsMessage(_DiscardedMessage):
+class _DiscardedEventsMessage(_DiscardedEventsMessageConst, _DiscardedMessage):
     _borrow_stream_ptr = staticmethod(native_bt.message_discarded_events_borrow_stream)
     _set_count = staticmethod(native_bt.message_discarded_events_set_count)
 
index 76cb1352e0eb9de76c83a01f9807898904a8e9df..f2089508d270524c4ccab859a30fa27fc0ff9940 100644 (file)
@@ -404,8 +404,7 @@ class CreateDiscardedEventMessageTestCase(unittest.TestCase):
 
         msg = utils.run_in_message_iterator_next(create_stream_class, msg_iter_next)
         self.assertIs(type(msg), bt2._DiscardedEventsMessage)
-        # Broken at the moment.
-        # self.assertIs(msg.count, None)
+        self.assertIs(msg.count, None)
 
     # With event count.
     def test_create_with_count(self):
@@ -417,8 +416,7 @@ class CreateDiscardedEventMessageTestCase(unittest.TestCase):
 
         msg = utils.run_in_message_iterator_next(create_stream_class, msg_iter_next)
         self.assertIs(type(msg), bt2._DiscardedEventsMessage)
-        # Broken at the moment.
-        # self.assertEqual(msg.count, 242)
+        self.assertEqual(msg.count, 242)
 
     # With clock snapshots.
     def test_create_with_clock_snapshots(self):
@@ -436,9 +434,8 @@ class CreateDiscardedEventMessageTestCase(unittest.TestCase):
 
         msg = utils.run_in_message_iterator_next(create_stream_class, msg_iter_next)
         self.assertIs(type(msg), bt2._DiscardedEventsMessage)
-        # Broken at the moment.
-        # self.assertEqual(msg.beginning_default_clock_snapshot, 10);
-        # self.assertEqual(msg.end_default_clock_snapshot, 20);
+        self.assertEqual(msg.beginning_default_clock_snapshot, 10)
+        self.assertEqual(msg.end_default_clock_snapshot, 20)
 
     # Trying to create when the stream does not support discarded events.
     def test_create_unsupported_raises(self):
This page took 0.025869 seconds and 4 git commands to generate.