bt2: prepend underscore to exceptions not meant to be raised by user
[babeltrace.git] / tests / bindings / python / bt2 / test_query_executor.py
index 3c4ba62fb264292111d865f50b6021eb68371368..0977430940f6afef0b07881cb104f634f77ea5d5 100644 (file)
@@ -35,28 +35,18 @@ class QueryExecutorTestCase(unittest.TestCase):
             def _query(cls, query_exec, obj, params, log_level):
                 nonlocal query_params
                 query_params = params
-                return {
-                    'null': None,
-                    'bt2': 'BT2',
-                }
+                return {'null': None, 'bt2': 'BT2'}
 
         query_params = None
         params = {
             'array': ['coucou', 23, None],
-            'other_map': {
-                'yes': 'yeah',
-                '19': 19,
-                'minus 1.5': -1.5,
-            },
+            'other_map': {'yes': 'yeah', '19': 19, 'minus 1.5': -1.5},
             'null': None,
         }
 
         res = bt2.QueryExecutor().query(MySink, 'obj', params)
         self.assertEqual(query_params, params)
-        self.assertEqual(res, {
-            'null': None,
-            'bt2': 'BT2',
-        })
+        self.assertEqual(res, {'null': None, 'bt2': 'BT2'})
         del query_params
 
     def test_query_params_none(self):
@@ -91,8 +81,7 @@ class QueryExecutorTestCase(unittest.TestCase):
                 query_log_level = log_level
 
         query_log_level = None
-        res = bt2.QueryExecutor().query(MySink, 'obj', None,
-                                        bt2.LoggingLevel.INFO)
+        res = bt2.QueryExecutor().query(MySink, 'obj', None, bt2.LoggingLevel.INFO)
         self.assertEqual(query_log_level, bt2.LoggingLevel.INFO)
         del query_log_level
 
@@ -108,9 +97,17 @@ class QueryExecutorTestCase(unittest.TestCase):
             def _query(cls, query_exec, obj, params, log_level):
                 raise ValueError
 
-        with self.assertRaises(bt2.Error):
+        with self.assertRaises(bt2._Error) as ctx:
             res = bt2.QueryExecutor().query(MySink, 'obj', [17, 23])
 
+        exc = ctx.exception
+        self.assertEqual(len(exc), 1)
+        cause = exc[0]
+        self.assertIsInstance(cause, bt2.error._ComponentClassErrorCause)
+        self.assertIn('raise ValueError', cause.message)
+        self.assertEqual(cause.component_class_type, bt2.ComponentClassType.SINK)
+        self.assertEqual(cause.component_class_name, 'MySink')
+
     def test_query_invalid_object(self):
         class MySink(bt2._UserSinkComponent):
             def _consume(self):
This page took 0.023858 seconds and 4 git commands to generate.