X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=tests%2Fbindings%2Fpython%2Fbt2%2Ftest_query_executor.py;h=e7186e8843b3e0ec929d250f7ac35aa80bf6ac93;hb=ffecc00e2725dea0af6a7e0cfb10a95b8f56ee68;hp=62f84d4a50712fbcdff3e82ecb2a61f6e6f350cc;hpb=561e7049fde1116fb0b25d902b8c158b309c8070;p=babeltrace.git diff --git a/tests/bindings/python/bt2/test_query_executor.py b/tests/bindings/python/bt2/test_query_executor.py index 62f84d4a..e7186e88 100644 --- a/tests/bindings/python/bt2/test_query_executor.py +++ b/tests/bindings/python/bt2/test_query_executor.py @@ -1,20 +1,7 @@ +# SPDX-License-Identifier: GPL-2.0-only # # Copyright (C) 2019 EfficiOS Inc. # -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; only version 2 -# of the License. -# -# 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# import unittest import bt2 @@ -22,6 +9,15 @@ import re class QueryExecutorTestCase(unittest.TestCase): + def test_default_interrupter(self): + class MySink(bt2._UserSinkComponent): + def _user_consume(self): + pass + + query_exec = bt2.QueryExecutor(MySink, 'obj') + interrupter = query_exec.default_interrupter + self.assertIs(type(interrupter), bt2.Interrupter) + def test_query(self): class MySink(bt2._UserSinkComponent): def _user_consume(self): @@ -41,6 +37,8 @@ class QueryExecutorTestCase(unittest.TestCase): } res = bt2.QueryExecutor(MySink, 'obj', params).query() + self.assertIs(type(res), bt2._MapValueConst) + self.assertIs(type(res['bt2']), bt2._StringValueConst) self.assertEqual(query_params, params) self.assertEqual(res, {'null': None, 'bt2': 'BT2'}) del query_params @@ -56,7 +54,7 @@ class QueryExecutorTestCase(unittest.TestCase): query_params = params query_params = 23 - res = bt2.QueryExecutor(MySink, 'obj', None).query() + bt2.QueryExecutor(MySink, 'obj', None).query() self.assertIs(query_params, None) del query_params @@ -71,7 +69,7 @@ class QueryExecutorTestCase(unittest.TestCase): query_params = params query_params = 23 - res = bt2.QueryExecutor(MySink, 'obj').query() + bt2.QueryExecutor(MySink, 'obj').query() self.assertIs(query_params, None) del query_params @@ -87,7 +85,7 @@ class QueryExecutorTestCase(unittest.TestCase): query_method_obj = None method_obj = object() - res = bt2.QueryExecutor(MySink, 'obj', method_obj=method_obj).query() + bt2.QueryExecutor(MySink, 'obj', method_obj=method_obj).query() self.assertIs(query_method_obj, method_obj) del query_method_obj @@ -125,7 +123,7 @@ class QueryExecutorTestCase(unittest.TestCase): query_method_obj = method_obj query_method_obj = object() - res = bt2.QueryExecutor(MySink, 'obj').query() + bt2.QueryExecutor(MySink, 'obj').query() self.assertIsNone(query_method_obj) del query_method_obj @@ -168,7 +166,7 @@ class QueryExecutorTestCase(unittest.TestCase): raise ValueError with self.assertRaises(bt2._Error) as ctx: - res = bt2.QueryExecutor(MySink, 'obj', [17, 23]).query() + bt2.QueryExecutor(MySink, 'obj', [17, 23]).query() exc = ctx.exception self.assertEqual(len(exc), 3) @@ -188,7 +186,7 @@ class QueryExecutorTestCase(unittest.TestCase): raise bt2.UnknownObject with self.assertRaises(bt2.UnknownObject): - res = bt2.QueryExecutor(MySink, 'obj', [17, 23]).query() + bt2.QueryExecutor(MySink, 'obj', [17, 23]).query() def test_query_logging_level_invalid_type(self): class MySink(bt2._UserSinkComponent): @@ -228,7 +226,7 @@ class QueryExecutorTestCase(unittest.TestCase): raise bt2.TryAgain with self.assertRaises(bt2.TryAgain): - res = bt2.QueryExecutor(MySink, 'obj', [17, 23]).query() + bt2.QueryExecutor(MySink, 'obj', [17, 23]).query() def test_query_add_interrupter(self): class MySink(bt2._UserSinkComponent): @@ -260,7 +258,7 @@ class QueryExecutorTestCase(unittest.TestCase): @classmethod def _user_query(cls, priv_query_exec, obj, params, method_obj): test_self.assertFalse(query_exec.is_interrupted) - query_exec.interrupt() + query_exec.default_interrupter.set() test_self.assertTrue(query_exec.is_interrupted) test_self = self @@ -286,3 +284,7 @@ class QueryExecutorTestCase(unittest.TestCase): test_priv_query_exec.logging_level del test_priv_query_exec + + +if __name__ == '__main__': + unittest.main()