X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=tests%2Fbindings%2Fpython%2Fbt2%2Ftest_error.py;h=1126ca7086ea974ab39f43ce66e1f64a869282fd;hb=0235b0db7de5bcacdb3650c92461f2ce5eb2143d;hp=821d30f5a25b485edfbc1b58c43d6b44f1cde620;hpb=d14ddbbab48ce07804d4252228fceee692d5dea4;p=babeltrace.git diff --git a/tests/bindings/python/bt2/test_error.py b/tests/bindings/python/bt2/test_error.py index 821d30f5..1126ca70 100644 --- a/tests/bindings/python/bt2/test_error.py +++ b/tests/bindings/python/bt2/test_error.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. -# from bt2 import native_bt import bt2 @@ -29,34 +16,34 @@ class FailingIter(bt2._UserMessageIterator): class SourceWithFailingIter( bt2._UserSourceComponent, message_iterator_class=FailingIter ): - def __init__(self, params, obj): + def __init__(self, config, params, obj): self._add_output_port('out') class SourceWithFailingInit( bt2._UserSourceComponent, message_iterator_class=FailingIter ): - def __init__(self, params, obj): + def __init__(self, config, params, obj): raise ValueError('Source is failing') class WorkingSink(bt2._UserSinkComponent): - def __init__(self, params, obj): + def __init__(self, config, params, obj): self._in = self._add_input_port('in') def _user_graph_is_configured(self): - self._iter = self._create_input_port_message_iterator(self._in) + self._iter = self._create_message_iterator(self._in) def _user_consume(self): next(self._iter) class SinkWithExceptionChaining(bt2._UserSinkComponent): - def __init__(self, params, obj): + def __init__(self, config, params, obj): self._in = self._add_input_port('in') def _user_graph_is_configured(self): - self._iter = self._create_input_port_message_iterator(self._in) + self._iter = self._create_message_iterator(self._in) def _user_consume(self): try: @@ -205,6 +192,15 @@ class ErrorTestCase(unittest.TestCase): self.assertEqual(cause.component_class_name, 'SourceWithFailingIter') self.assertIsNone(cause.plugin_name) + def test_str(self): + # Test __str__. We don't need to test the precise format used, but + # just that it doesn't miserably crash and that it contains some + # expected bits. + exc = self._run_failing_graph(SourceWithFailingIter, SinkWithExceptionChaining) + s = str(exc) + self.assertIn("[src (out): 'source.SourceWithFailingIter']", s) + self.assertIn('ValueError: oops', s) + if __name__ == '__main__': unittest.main()