+# 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
)
class MyIter(bt2._UserMessageIterator):
- def __init__(self, self_port_output):
+ def __init__(self, config, self_port_output):
trace = tc()
stream = trace.create_stream(stream_class)
return self._msgs.pop(0)
class MySrc(bt2._UserSourceComponent, message_iterator_class=MyIter):
- def __init__(self, params, obj):
+ def __init__(self, config, params, obj):
self._add_output_port('out', params)
graph = bt2.Graph()
with self.assertRaises(TypeError):
sc.create_event_class(id='lel')
+ self.assertEqual(len(sc), 0)
+
def test_create_specific_context_field_class(self):
fc = self._tc.create_structure_field_class()
ec = self._stream_class.create_event_class(specific_context_field_class=fc)
with self.assertRaises(TypeError):
self._stream_class.create_event_class(specific_context_field_class='lel')
+ self.assertEqual(len(self._stream_class), 0)
+
def test_create_payload_field_class(self):
fc = self._tc.create_structure_field_class()
ec = self._stream_class.create_event_class(payload_field_class=fc)
with self.assertRaises(TypeError):
self._stream_class.create_event_class(payload_field_class='lel')
+ self.assertEqual(len(self._stream_class), 0)
+
def test_create_name(self):
ec = self._stream_class.create_event_class(name='viande à chien')
self.assertEqual(ec.name, 'viande à chien')
with self.assertRaises(TypeError):
self._stream_class.create_event_class(name=2)
+ self.assertEqual(len(self._stream_class), 0)
+
def test_emf_uri(self):
ec = self._stream_class.create_event_class(emf_uri='salut')
self.assertEqual(ec.emf_uri, 'salut')
with self.assertRaises(TypeError):
self._stream_class.create_event_class(emf_uri=23)
+ self.assertEqual(len(self._stream_class), 0)
+
def test_create_log_level(self):
ec = self._stream_class.create_event_class(
log_level=bt2.EventClassLogLevel.EMERGENCY
with self.assertRaises(ValueError):
self._stream_class.create_event_class(log_level='zoom')
+ self.assertEqual(len(self._stream_class), 0)
+
def test_create_user_attributes(self):
ec = self._stream_class.create_event_class(user_attributes={'salut': 23})
self.assertEqual(ec.user_attributes, {'salut': 23})
with self.assertRaises(TypeError):
self._stream_class.create_event_class(user_attributes=object())
+ self.assertEqual(len(self._stream_class), 0)
+
def test_create_invalid_user_attributes_value_type(self):
with self.assertRaises(TypeError):
self._stream_class.create_event_class(user_attributes=23)
+ self.assertEqual(len(self._stream_class), 0)
+
def test_stream_class(self):
ec = self._stream_class.create_event_class()
self.assertEqual(ec.stream_class.addr, self._stream_class.addr)
def test_const_stream_class(self):
ec_const = _create_const_event_class(self._tc, self._stream_class)
self.assertIs(type(ec_const.stream_class), bt2_stream_class._StreamClassConst)
+
+
+if __name__ == '__main__':
+ unittest.main()