X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=tests%2Fbindings%2Fpython%2Fbt2%2Ftest_clock_class.py;h=b9d25e54b0f970e1edb10172c6ffd8b0b73d6c53;hb=d14ddbbab48ce07804d4252228fceee692d5dea4;hp=3805c0d56168f87a18d94e935fe1f855f54c2f2b;hpb=6c373cc905e907ecbad698fee38db1d47a981b14;p=babeltrace.git diff --git a/tests/bindings/python/bt2/test_clock_class.py b/tests/bindings/python/bt2/test_clock_class.py index 3805c0d5..b9d25e54 100644 --- a/tests/bindings/python/bt2/test_clock_class.py +++ b/tests/bindings/python/bt2/test_clock_class.py @@ -18,9 +18,11 @@ import unittest import uuid -import copy import bt2 +import utils from utils import run_in_component_init, TestOutputPortMessageIterator +from bt2 import value as bt2_value +from bt2 import clock_class as bt2_clock_class class ClockClassOffsetTestCase(unittest.TestCase): @@ -88,6 +90,7 @@ class ClockClassTestCase(unittest.TestCase): self.assertEqual(cc.offset, bt2.ClockClassOffset()) self.assertTrue(cc.origin_is_unix_epoch) self.assertIsNone(cc.uuid) + self.assertEqual(len(cc.user_attributes), 0) def test_create_name(self): def f(comp_self): @@ -199,6 +202,30 @@ class ClockClassTestCase(unittest.TestCase): self.assertRaisesInComponentInit(TypeError, f) + def test_create_user_attributes(self): + def f(comp_self): + return comp_self._create_clock_class(user_attributes={'salut': 23}) + + cc = run_in_component_init(f) + self.assertEqual(cc.user_attributes, {'salut': 23}) + self.assertIs(type(cc.user_attributes), bt2_value.MapValue) + + def test_create_invalid_user_attributes(self): + def f(comp_self): + return comp_self._create_clock_class(user_attributes=object()) + + self.assertRaisesInComponentInit(TypeError, f) + + def test_create_invalid_user_attributes_value_type(self): + def f(comp_self): + return comp_self._create_clock_class(user_attributes=23) + + self.assertRaisesInComponentInit(TypeError, f) + + def test_const_user_attributes(self): + cc = utils.get_const_event_message().default_clock_snapshot.clock_class + self.assertIs(type(cc.user_attributes), bt2_value._MapValueConst) + class ClockSnapshotTestCase(unittest.TestCase): def setUp(self): @@ -266,9 +293,9 @@ class ClockSnapshotTestCase(unittest.TestCase): self.assertEqual(self._msg.default_clock_snapshot.value, 123) def test_clock_class(self): - self.assertEqual( - self._msg.default_clock_snapshot.clock_class.addr, self._cc.addr - ) + cc = self._msg.default_clock_snapshot.clock_class + self.assertEqual(cc.addr, self._cc.addr) + self.assertIs(type(cc), bt2_clock_class._ClockClassConst) def test_ns_from_origin(self): s_from_origin = 45 + ((354 + 123) / 1000) @@ -299,3 +326,7 @@ class ClockSnapshotTestCase(unittest.TestCase): self.assertTrue(self._msg.default_clock_snapshot <= 123) self.assertFalse(self._msg.default_clock_snapshot <= 100) + + +if __name__ == '__main__': + unittest.main()