From 3fb99a226ccb40c79de6b55b5a249d93b9c5262e Mon Sep 17 00:00:00 2001 From: Philippe Proulx Date: Wed, 24 Jul 2019 16:36:30 -0400 Subject: [PATCH] bt2: clean available `bt2` package names MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This patch makes the `bt2` package contain exactly the names that we want to expose. When you do: import bt2 dir(bt2) the list, except for the standard names added by Python itself, contains exactly what is meant to be used by the user. More specifically, it does not contain the names of our internal modules, so that, for example, `bt2.clock_class` is not available. In `__init__.py`, doing from bt2.field import _EnumerationField binds the `field` name in the package to the `bt2.field` module [1]: > When a submodule is loaded using any mechanism (e.g. importlib APIs, > the import or import-from statements, or built-in __import__()) a > binding is placed in the parent module’s namespace to the submodule > object. All the `from bt2.xyz import Something` lines eventually bind some or all module names in the `bt2` package, so `__init__.py` explicitly tries to delete the module names just after. `__init__.py` also deletes the `_init_and_register_exit` name which is private and used a single time to initialize the native part. Internally, within a module file, because the module names are not available anymore in the `bt2` package, we cannot do import bt2.clock_class as `clock_class` is not a name within `bt2`. This is why all those private imports are replaced with, for example: from bt2 import clock_class as bt2_clock_class Now `bt2_clock_class` is a name bound to the `bt2.clock_class` module. Note that we cannot use the import bt2.clock_class as bt2_clock_class because this leads to circular import issues with Python < 3.7 [2]. The `from bt2 import clock_class` form does not create circular imports. Doing this change in `__init__.py` revealed a lot of locations where `bt2.some_module.SomeName` was used without explicitly importing `bt2.some_module`. They are all fixed now. [1]: https://docs.python.org/3/reference/import.html#submodules [2]: https://bugs.python.org/issue30024 Signed-off-by: Philippe Proulx Change-Id: Ib7d2b3ef3283ace19cbcb811d537a63b34690ada Reviewed-on: https://review.lttng.org/c/babeltrace/+/1774 Tested-by: jenkins --- src/bindings/python/bt2/bt2/__init__.py.in | 64 +++++++++++++++---- src/bindings/python/bt2/bt2/clock_snapshot.py | 3 +- src/bindings/python/bt2/bt2/component.py | 58 +++++++++-------- src/bindings/python/bt2/bt2/connection.py | 11 ++-- src/bindings/python/bt2/bt2/event.py | 24 +++---- src/bindings/python/bt2/bt2/event_class.py | 17 ++--- src/bindings/python/bt2/bt2/field.py | 4 +- src/bindings/python/bt2/bt2/field_class.py | 22 +++---- src/bindings/python/bt2/bt2/graph.py | 55 ++++++++-------- src/bindings/python/bt2/bt2/message.py | 22 +++---- .../python/bt2/bt2/message_iterator.py | 54 ++++++++-------- src/bindings/python/bt2/bt2/packet.py | 7 +- src/bindings/python/bt2/bt2/plugin.py | 6 +- src/bindings/python/bt2/bt2/port.py | 12 ++-- src/bindings/python/bt2/bt2/py_plugin.py | 4 +- src/bindings/python/bt2/bt2/query_executor.py | 17 ++--- src/bindings/python/bt2/bt2/stream.py | 12 ++-- src/bindings/python/bt2/bt2/stream_class.py | 27 ++++---- src/bindings/python/bt2/bt2/trace.py | 23 +++---- src/bindings/python/bt2/bt2/trace_class.py | 45 ++++++------- .../bt2/trace_collection_message_iterator.py | 10 +-- src/bindings/python/bt2/bt2/utils.py | 16 ++--- src/bindings/python/bt2/bt2/value.py | 2 +- .../python/bt2/test_component_class.py | 2 +- tests/bindings/python/bt2/test_error.py | 25 ++++---- tests/bindings/python/bt2/test_field.py | 4 +- tests/bindings/python/bt2/test_field_class.py | 34 ++++------ tests/bindings/python/bt2/test_graph.py | 22 +++---- tests/bindings/python/bt2/test_message.py | 40 ++++++------ .../python/bt2/test_message_iterator.py | 26 ++++---- tests/bindings/python/bt2/test_plugin.py | 2 - .../python/bt2/test_query_executor.py | 2 +- tests/bindings/python/bt2/test_trace_class.py | 2 - .../test_trace_collection_message_iterator.py | 14 ++-- 34 files changed, 366 insertions(+), 322 deletions(-) diff --git a/src/bindings/python/bt2/bt2/__init__.py.in b/src/bindings/python/bt2/bt2/__init__.py.in index af5cd951..62746bfb 100644 --- a/src/bindings/python/bt2/bt2/__init__.py.in +++ b/src/bindings/python/bt2/bt2/__init__.py.in @@ -23,6 +23,7 @@ __version__ = '@PACKAGE_VERSION@' +# import all public names from bt2.clock_class import ClockClassOffset from bt2.clock_snapshot import _ClockSnapshot from bt2.clock_snapshot import _UnknownClockSnapshot @@ -114,6 +115,48 @@ from bt2.value import ArrayValue from bt2.value import MapValue +def _del_global_name(name): + if name in globals(): + del globals()[name] + + +# remove private module names from the package +_del_global_name('_native_bt') +_del_global_name('clock_class') +_del_global_name('clock_snapshot') +_del_global_name('component') +_del_global_name('connection') +_del_global_name('error') +_del_global_name('event') +_del_global_name('event_class') +_del_global_name('field') +_del_global_name('field_class') +_del_global_name('field_path') +_del_global_name('graph') +_del_global_name('integer_range_set') +_del_global_name('interrupter') +_del_global_name('logging') +_del_global_name('message') +_del_global_name('message_iterator') +_del_global_name('native_bt') +_del_global_name('object') +_del_global_name('packet') +_del_global_name('plugin') +_del_global_name('port') +_del_global_name('py_plugin') +_del_global_name('query_executor') +_del_global_name('stream') +_del_global_name('stream_class') +_del_global_name('trace') +_del_global_name('trace_class') +_del_global_name('trace_collection_message_iterator') +_del_global_name('utils') +_del_global_name('value') + +# remove private `_del_global_name` name from the package +del _del_global_name + + class _MemoryError(_Error): '''Raised when an operation fails due to memory issues.''' @@ -139,23 +182,20 @@ class _IncompleteUserClass(Exception): def _init_and_register_exit(): - import bt2.native_bt as _native_bt + from bt2 import native_bt import atexit - atexit.register(_native_bt.bt2_cc_exit_handler) + atexit.register(native_bt.bt2_cc_exit_handler) version = ( - _native_bt.version_get_major(), - _native_bt.version_get_minor(), - _native_bt.version_get_patch(), - _native_bt.version_get_extra(), + native_bt.version_get_major(), + native_bt.version_get_minor(), + native_bt.version_get_patch(), + native_bt.version_get_extra(), ) - _native_bt.bt2_cc_init_from_bt2() + native_bt.bt2_cc_init_from_bt2() _init_and_register_exit() - -try: - del native_bt -except: - pass +# remove private `_init_and_register_exit` name from the package +del _init_and_register_exit diff --git a/src/bindings/python/bt2/bt2/clock_snapshot.py b/src/bindings/python/bt2/bt2/clock_snapshot.py index 5c53fdd7..9e3effec 100644 --- a/src/bindings/python/bt2/bt2/clock_snapshot.py +++ b/src/bindings/python/bt2/bt2/clock_snapshot.py @@ -23,6 +23,7 @@ from bt2 import native_bt, object, utils import numbers import bt2 +from bt2 import clock_class as bt2_clock_class import functools @@ -32,7 +33,7 @@ class _ClockSnapshot(object._UniqueObject): def clock_class(self): cc_ptr = native_bt.clock_snapshot_borrow_clock_class_const(self._ptr) assert cc_ptr is not None - return bt2.clock_class._ClockClass._create_from_ptr_and_get_ref(cc_ptr) + return bt2_clock_class._ClockClass._create_from_ptr_and_get_ref(cc_ptr) @property def value(self): diff --git a/src/bindings/python/bt2/bt2/component.py b/src/bindings/python/bt2/bt2/component.py index efbfc343..d26adc8f 100644 --- a/src/bindings/python/bt2/bt2/component.py +++ b/src/bindings/python/bt2/bt2/component.py @@ -21,12 +21,14 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.message_iterator +from bt2 import message_iterator as bt2_message_iterator import collections.abc -import bt2.value -import bt2.trace_class +from bt2 import value as bt2_value +from bt2 import trace_class as bt2_trace_class +from bt2 import clock_class as bt2_clock_class +from bt2 import query_executor as bt2_query_executor import traceback -import bt2.port +from bt2 import port as bt2_port import sys import bt2 import os @@ -247,7 +249,7 @@ class _GenericSourceComponent(object._SharedObject, _SourceComponent): native_bt.component_source_borrow_output_port_by_name_const, native_bt.component_source_borrow_output_port_by_index_const, native_bt.component_source_get_output_port_count, - bt2.port._OutputPort, + bt2_port._OutputPort, ) @@ -264,7 +266,7 @@ class _GenericFilterComponent(object._SharedObject, _FilterComponent): native_bt.component_filter_borrow_output_port_by_name_const, native_bt.component_filter_borrow_output_port_by_index_const, native_bt.component_filter_get_output_port_count, - bt2.port._OutputPort, + bt2_port._OutputPort, ) @property @@ -274,7 +276,7 @@ class _GenericFilterComponent(object._SharedObject, _FilterComponent): native_bt.component_filter_borrow_input_port_by_name_const, native_bt.component_filter_borrow_input_port_by_index_const, native_bt.component_filter_get_input_port_count, - bt2.port._InputPort, + bt2_port._InputPort, ) @@ -291,7 +293,7 @@ class _GenericSinkComponent(object._SharedObject, _SinkComponent): native_bt.component_sink_borrow_input_port_by_name_const, native_bt.component_sink_borrow_input_port_by_index_const, native_bt.component_sink_get_input_port_count, - bt2.port._InputPort, + bt2_port._InputPort, ) @@ -515,7 +517,7 @@ class _UserComponentType(type): # call user's __init__() method if params_ptr is not None: - params = bt2.value._create_from_ptr_and_get_ref(params_ptr) + params = bt2_value._create_from_ptr_and_get_ref(params_ptr) else: params = None @@ -536,7 +538,7 @@ class _UserComponentType(type): ) ) - if not issubclass(iter_cls, bt2.message_iterator._UserMessageIterator): + if not issubclass(iter_cls, bt2_message_iterator._UserMessageIterator): raise bt2._IncompleteUserClass( "cannot create component class '{}': message iterator class does not inherit bt2._UserMessageIterator".format( cls.__name__ @@ -575,11 +577,13 @@ class _UserComponentType(type): # this can raise, in which case the native call to # bt_component_class_query() returns NULL if params_ptr is not None: - params = bt2.value._create_from_ptr_and_get_ref(params_ptr) + params = bt2_value._create_from_ptr_and_get_ref(params_ptr) else: params = None - query_exec = bt2.QueryExecutor._create_from_ptr_and_get_ref(query_exec_ptr) + query_exec = bt2_query_executor.QueryExecutor._create_from_ptr_and_get_ref( + query_exec_ptr + ) # this can raise, but the native side checks the exception results = cls._query(query_exec, obj, params, log_level) @@ -594,7 +598,7 @@ class _UserComponentType(type): results_ptr = results._ptr # We return a new reference. - bt2.value._Value._get_ref(results_ptr) + bt2_value._Value._get_ref(results_ptr) return int(results_ptr) @@ -661,14 +665,14 @@ class _UserComponent(metaclass=_UserComponentType): def _bt_port_connected_from_native( self, self_port_ptr, self_port_type, other_port_ptr ): - port = bt2.port._create_self_from_ptr_and_get_ref(self_port_ptr, self_port_type) + port = bt2_port._create_self_from_ptr_and_get_ref(self_port_ptr, self_port_type) if self_port_type == native_bt.PORT_TYPE_OUTPUT: other_port_type = native_bt.PORT_TYPE_INPUT else: other_port_type = native_bt.PORT_TYPE_OUTPUT - other_port = bt2.port._create_from_ptr_and_get_ref( + other_port = bt2_port._create_from_ptr_and_get_ref( other_port_ptr, other_port_type ) self._port_connected(port, other_port) @@ -680,7 +684,7 @@ class _UserComponent(metaclass=_UserComponentType): if tc_ptr is None: raise bt2._MemoryError('could not create trace class') - tc = bt2.trace_class._TraceClass._create_from_ptr(tc_ptr) + tc = bt2_trace_class._TraceClass._create_from_ptr(tc_ptr) tc._assigns_automatic_stream_class_id = assigns_automatic_stream_class_id return tc @@ -701,7 +705,7 @@ class _UserComponent(metaclass=_UserComponentType): if cc_ptr is None: raise bt2._MemoryError('could not create clock class') - cc = bt2.clock_class._ClockClass._create_from_ptr(cc_ptr) + cc = bt2_clock_class._ClockClass._create_from_ptr(cc_ptr) if frequency is not None: cc._frequency = frequency @@ -745,7 +749,7 @@ class _UserSourceComponent(_UserComponent, _SourceComponent): native_bt.self_component_source_borrow_output_port_by_name, native_bt.self_component_source_borrow_output_port_by_index, get_output_port_count, - bt2.port._UserComponentOutputPort, + bt2_port._UserComponentOutputPort, ) def _add_output_port(self, name, user_data=None): @@ -756,7 +760,7 @@ class _UserSourceComponent(_UserComponent, _SourceComponent): comp_status, 'cannot add output port to source component object' ) assert self_port_ptr is not None - return bt2.port._UserComponentOutputPort._create_from_ptr(self_port_ptr) + return bt2_port._UserComponentOutputPort._create_from_ptr(self_port_ptr) class _UserFilterComponent(_UserComponent, _FilterComponent): @@ -778,7 +782,7 @@ class _UserFilterComponent(_UserComponent, _FilterComponent): native_bt.self_component_filter_borrow_output_port_by_name, native_bt.self_component_filter_borrow_output_port_by_index, get_output_port_count, - bt2.port._UserComponentOutputPort, + bt2_port._UserComponentOutputPort, ) @property @@ -792,7 +796,7 @@ class _UserFilterComponent(_UserComponent, _FilterComponent): native_bt.self_component_filter_borrow_input_port_by_name, native_bt.self_component_filter_borrow_input_port_by_index, get_input_port_count, - bt2.port._UserComponentInputPort, + bt2_port._UserComponentInputPort, ) def _add_output_port(self, name, user_data=None): @@ -803,7 +807,7 @@ class _UserFilterComponent(_UserComponent, _FilterComponent): comp_status, 'cannot add output port to filter component object' ) assert self_port_ptr - return bt2.port._UserComponentOutputPort._create_from_ptr(self_port_ptr) + return bt2_port._UserComponentOutputPort._create_from_ptr(self_port_ptr) def _add_input_port(self, name, user_data=None): utils._check_str(name) @@ -813,7 +817,7 @@ class _UserFilterComponent(_UserComponent, _FilterComponent): comp_status, 'cannot add input port to filter component object' ) assert self_port_ptr - return bt2.port._UserComponentInputPort._create_from_ptr(self_port_ptr) + return bt2_port._UserComponentInputPort._create_from_ptr(self_port_ptr) class _UserSinkComponent(_UserComponent, _SinkComponent): @@ -841,7 +845,7 @@ class _UserSinkComponent(_UserComponent, _SinkComponent): native_bt.self_component_sink_borrow_input_port_by_name, native_bt.self_component_sink_borrow_input_port_by_index, get_input_port_count, - bt2.port._UserComponentInputPort, + bt2_port._UserComponentInputPort, ) def _add_input_port(self, name, user_data=None): @@ -852,10 +856,10 @@ class _UserSinkComponent(_UserComponent, _SinkComponent): comp_status, 'cannot add input port to sink component object' ) assert self_port_ptr - return bt2.port._UserComponentInputPort._create_from_ptr(self_port_ptr) + return bt2_port._UserComponentInputPort._create_from_ptr(self_port_ptr) def _create_input_port_message_iterator(self, input_port): - utils._check_type(input_port, bt2.port._UserComponentInputPort) + utils._check_type(input_port, bt2_port._UserComponentInputPort) msg_iter_ptr = native_bt.self_component_port_input_message_iterator_create_from_sink_component( self._bt_ptr, input_port._ptr @@ -864,7 +868,7 @@ class _UserSinkComponent(_UserComponent, _SinkComponent): if msg_iter_ptr is None: raise bt2.CreationError('cannot create message iterator object') - return bt2.message_iterator._UserComponentInputPortMessageIterator(msg_iter_ptr) + return bt2_message_iterator._UserComponentInputPortMessageIterator(msg_iter_ptr) @property def _is_interrupted(self): diff --git a/src/bindings/python/bt2/bt2/connection.py b/src/bindings/python/bt2/bt2/connection.py index 0dc57826..74fe022d 100644 --- a/src/bindings/python/bt2/bt2/connection.py +++ b/src/bindings/python/bt2/bt2/connection.py @@ -21,25 +21,26 @@ # THE SOFTWARE. from bt2 import native_bt, utils -import bt2.message_iterator -import bt2.port +from bt2 import message_iterator as bt2_message_iterator +from bt2 import port as bt2_port +from bt2 import object as bt2_object import bt2 -class _Connection(bt2.object._SharedObject): +class _Connection(bt2_object._SharedObject): _get_ref = staticmethod(native_bt.connection_get_ref) _put_ref = staticmethod(native_bt.connection_put_ref) @property def downstream_port(self): port_ptr = native_bt.connection_borrow_downstream_port_const(self._ptr) - return bt2.port._create_from_ptr_and_get_ref( + return bt2_port._create_from_ptr_and_get_ref( port_ptr, native_bt.PORT_TYPE_INPUT ) @property def upstream_port(self): port_ptr = native_bt.connection_borrow_upstream_port_const(self._ptr) - return bt2.port._create_from_ptr_and_get_ref( + return bt2_port._create_from_ptr_and_get_ref( port_ptr, native_bt.PORT_TYPE_OUTPUT ) diff --git a/src/bindings/python/bt2/bt2/event.py b/src/bindings/python/bt2/bt2/event.py index 78179c5a..fac54f4e 100644 --- a/src/bindings/python/bt2/bt2/event.py +++ b/src/bindings/python/bt2/bt2/event.py @@ -21,12 +21,12 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.clock_class -import bt2.event_class -import bt2.packet -import bt2.stream -import bt2.field -import bt2.clock_snapshot +from bt2 import clock_class as bt2_clock_class +from bt2 import event_class as bt2_event_class +from bt2 import packet as bt2_packet +from bt2 import stream as bt2_stream +from bt2 import field as bt2_field +from bt2 import clock_snapshot as bt2_clock_snapshot import bt2 @@ -35,7 +35,7 @@ class _Event(object._UniqueObject): def cls(self): event_class_ptr = native_bt.event_borrow_class(self._ptr) assert event_class_ptr is not None - return bt2.event_class._EventClass._create_from_ptr_and_get_ref(event_class_ptr) + return bt2_event_class._EventClass._create_from_ptr_and_get_ref(event_class_ptr) @property def name(self): @@ -52,13 +52,13 @@ class _Event(object._UniqueObject): if packet_ptr is None: return - return bt2.packet._Packet._create_from_ptr_and_get_ref(packet_ptr) + return bt2_packet._Packet._create_from_ptr_and_get_ref(packet_ptr) @property def stream(self): stream_ptr = native_bt.event_borrow_stream(self._ptr) assert stream_ptr is not None - return bt2.stream._Stream._create_from_ptr_and_get_ref(stream_ptr) + return bt2_stream._Stream._create_from_ptr_and_get_ref(stream_ptr) @property def common_context_field(self): @@ -67,7 +67,7 @@ class _Event(object._UniqueObject): if field_ptr is None: return - return bt2.field._create_field_from_ptr( + return bt2_field._create_field_from_ptr( field_ptr, self._owner_ptr, self._owner_get_ref, self._owner_put_ref ) @@ -78,7 +78,7 @@ class _Event(object._UniqueObject): if field_ptr is None: return - return bt2.field._create_field_from_ptr( + return bt2_field._create_field_from_ptr( field_ptr, self._owner_ptr, self._owner_get_ref, self._owner_put_ref ) @@ -89,7 +89,7 @@ class _Event(object._UniqueObject): if field_ptr is None: return - return bt2.field._create_field_from_ptr( + return bt2_field._create_field_from_ptr( field_ptr, self._owner_ptr, self._owner_get_ref, self._owner_put_ref ) diff --git a/src/bindings/python/bt2/bt2/event_class.py b/src/bindings/python/bt2/bt2/event_class.py index 00aae1b1..dfef6213 100644 --- a/src/bindings/python/bt2/bt2/event_class.py +++ b/src/bindings/python/bt2/bt2/event_class.py @@ -21,9 +21,10 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.field_class -import bt2.value -import bt2.event +from bt2 import field_class as bt2_field_class +from bt2 import value as bt2_value +from bt2 import event as bt2_event +from bt2 import stream_class as bt2_stream_class import bt2 @@ -54,7 +55,7 @@ class _EventClass(object._SharedObject): sc_ptr = native_bt.event_class_borrow_stream_class(self._ptr) if sc_ptr is not None: - return bt2.stream_class._StreamClass._create_from_ptr_and_get_ref(sc_ptr) + return bt2_stream_class._StreamClass._create_from_ptr_and_get_ref(sc_ptr) @property def name(self): @@ -126,11 +127,11 @@ class _EventClass(object._SharedObject): if fc_ptr is None: return - return bt2.field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) + return bt2_field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) def _specific_context_field_class(self, context_field_class): if context_field_class is not None: - utils._check_type(context_field_class, bt2.field_class._StructureFieldClass) + utils._check_type(context_field_class, bt2_field_class._StructureFieldClass) status = native_bt.event_class_set_specific_context_field_class( self._ptr, context_field_class._ptr ) @@ -147,11 +148,11 @@ class _EventClass(object._SharedObject): if fc_ptr is None: return - return bt2.field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) + return bt2_field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) def _payload_field_class(self, payload_field_class): if payload_field_class is not None: - utils._check_type(payload_field_class, bt2.field_class._StructureFieldClass) + utils._check_type(payload_field_class, bt2_field_class._StructureFieldClass) status = native_bt.event_class_set_payload_field_class( self._ptr, payload_field_class._ptr ) diff --git a/src/bindings/python/bt2/bt2/field.py b/src/bindings/python/bt2/bt2/field.py index 0cdffb1a..c8e292b1 100644 --- a/src/bindings/python/bt2/bt2/field.py +++ b/src/bindings/python/bt2/bt2/field.py @@ -21,7 +21,7 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.field_class +from bt2 import field_class as bt2_field_class import collections.abc import functools import numbers @@ -59,7 +59,7 @@ class _Field(object._UniqueObject): def field_class(self): field_class_ptr = native_bt.field_borrow_class_const(self._ptr) assert field_class_ptr is not None - return bt2.field_class._create_field_class_from_ptr_and_get_ref(field_class_ptr) + return bt2_field_class._create_field_class_from_ptr_and_get_ref(field_class_ptr) def _repr(self): raise NotImplementedError diff --git a/src/bindings/python/bt2/bt2/field_class.py b/src/bindings/python/bt2/bt2/field_class.py index cfad4c04..3e68b107 100644 --- a/src/bindings/python/bt2/bt2/field_class.py +++ b/src/bindings/python/bt2/bt2/field_class.py @@ -22,9 +22,9 @@ from bt2 import native_bt, object, utils import collections.abc -import bt2.field -import bt2.field_path -import bt2.integer_range_set +from bt2 import field as bt2_field +from bt2 import field_path as bt2_field_path +from bt2 import integer_range_set as bt2_integer_range_set import bt2 @@ -134,7 +134,7 @@ class _EnumerationFieldClassMapping: class _UnsignedEnumerationFieldClassMapping(_EnumerationFieldClassMapping): - _ranges_type = bt2.integer_range_set.UnsignedIntegerRangeSet + _ranges_type = bt2_integer_range_set.UnsignedIntegerRangeSet _as_enumeration_field_class_mapping_ptr = staticmethod( native_bt.field_class_enumeration_unsigned_mapping_as_mapping_const ) @@ -144,7 +144,7 @@ class _UnsignedEnumerationFieldClassMapping(_EnumerationFieldClassMapping): class _SignedEnumerationFieldClassMapping(_EnumerationFieldClassMapping): - _ranges_type = bt2.integer_range_set.SignedIntegerRangeSet + _ranges_type = bt2_integer_range_set.SignedIntegerRangeSet _as_enumeration_field_class_mapping_ptr = staticmethod( native_bt.field_class_enumeration_signed_mapping_as_mapping_const ) @@ -203,7 +203,7 @@ class _UnsignedEnumerationFieldClass( _EnumerationFieldClass, _UnsignedIntegerFieldClass ): _NAME = 'Unsigned enumeration' - _range_set_type = bt2.integer_range_set.UnsignedIntegerRangeSet + _range_set_type = bt2_integer_range_set.UnsignedIntegerRangeSet _add_mapping = staticmethod(native_bt.field_class_enumeration_unsigned_add_mapping) @staticmethod @@ -235,7 +235,7 @@ class _UnsignedEnumerationFieldClass( class _SignedEnumerationFieldClass(_EnumerationFieldClass, _SignedIntegerFieldClass): _NAME = 'Signed enumeration' - _range_set_type = bt2.integer_range_set.SignedIntegerRangeSet + _range_set_type = bt2_integer_range_set.SignedIntegerRangeSet _add_mapping = staticmethod(native_bt.field_class_enumeration_signed_add_mapping) @staticmethod @@ -489,7 +489,7 @@ class _VariantFieldClassWithSelector(_VariantFieldClass): if ptr is None: return - return bt2.field_path._FieldPath._create_from_ptr_and_get_ref(ptr) + return bt2_field_path._FieldPath._create_from_ptr_and_get_ref(ptr) def append_option(self, name, field_class, ranges): utils._check_str(name) @@ -533,7 +533,7 @@ class _VariantFieldClassWithUnsignedSelector(_VariantFieldClassWithSelector): _option_borrow_ranges_ptr = staticmethod( native_bt.field_class_variant_with_selector_unsigned_option_borrow_ranges_const ) - _range_set_type = bt2.integer_range_set.UnsignedIntegerRangeSet + _range_set_type = bt2_integer_range_set.UnsignedIntegerRangeSet class _VariantFieldClassWithSignedSelector(_VariantFieldClassWithSelector): @@ -553,7 +553,7 @@ class _VariantFieldClassWithSignedSelector(_VariantFieldClassWithSelector): _option_borrow_ranges_ptr = staticmethod( native_bt.field_class_variant_with_selector_signed_option_borrow_ranges_const ) - _range_set_type = bt2.integer_range_set.SignedIntegerRangeSet + _range_set_type = bt2_integer_range_set.SignedIntegerRangeSet class _ArrayFieldClass(_FieldClass): @@ -580,7 +580,7 @@ class _DynamicArrayFieldClass(_ArrayFieldClass): if ptr is None: return - return bt2.field_path._FieldPath._create_from_ptr_and_get_ref(ptr) + return bt2_field_path._FieldPath._create_from_ptr_and_get_ref(ptr) _FIELD_CLASS_TYPE_TO_OBJ = { diff --git a/src/bindings/python/bt2/bt2/graph.py b/src/bindings/python/bt2/bt2/graph.py index bed266f1..aa6b8a74 100644 --- a/src/bindings/python/bt2/bt2/graph.py +++ b/src/bindings/python/bt2/bt2/graph.py @@ -21,22 +21,23 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.interrupter -import bt2.connection -import bt2.component +from bt2 import interrupter as bt2_interrupter +from bt2 import connection as bt2_connection +from bt2 import component as bt2_component +from bt2 import message_iterator as bt2_message_iterator import functools -import bt2.port -import bt2.logging +from bt2 import port as bt2_port +from bt2 import logging as bt2_logging import bt2 def _graph_port_added_listener_from_native( user_listener, component_ptr, component_type, port_ptr, port_type ): - component = bt2.component._create_component_from_ptr_and_get_ref( + component = bt2_component._create_component_from_ptr_and_get_ref( component_ptr, component_type ) - port = bt2.port._create_from_ptr_and_get_ref(port_ptr, port_type) + port = bt2_port._create_from_ptr_and_get_ref(port_ptr, port_type) user_listener(component, port) @@ -49,16 +50,16 @@ def _graph_ports_connected_listener_from_native( downstream_component_type, downstream_port_ptr, ): - upstream_component = bt2.component._create_component_from_ptr_and_get_ref( + upstream_component = bt2_component._create_component_from_ptr_and_get_ref( upstream_component_ptr, upstream_component_type ) - upstream_port = bt2.port._create_from_ptr_and_get_ref( + upstream_port = bt2_port._create_from_ptr_and_get_ref( upstream_port_ptr, native_bt.PORT_TYPE_OUTPUT ) - downstream_component = bt2.component._create_component_from_ptr_and_get_ref( + downstream_component = bt2_component._create_component_from_ptr_and_get_ref( downstream_component_ptr, downstream_component_type ) - downstream_port = bt2.port._create_from_ptr_and_get_ref( + downstream_port = bt2_port._create_from_ptr_and_get_ref( downstream_port_ptr, native_bt.PORT_TYPE_INPUT ) user_listener( @@ -83,29 +84,29 @@ class Graph(object._SharedObject): component_class, name, params=None, - logging_level=bt2.logging.LoggingLevel.NONE, + logging_level=bt2_logging.LoggingLevel.NONE, ): - if isinstance(component_class, bt2.component._SourceComponentClass): + if isinstance(component_class, bt2_component._SourceComponentClass): cc_ptr = component_class._ptr add_fn = native_bt.graph_add_source_component cc_type = native_bt.COMPONENT_CLASS_TYPE_SOURCE - elif isinstance(component_class, bt2.component._FilterComponentClass): + elif isinstance(component_class, bt2_component._FilterComponentClass): cc_ptr = component_class._ptr add_fn = native_bt.graph_add_filter_component cc_type = native_bt.COMPONENT_CLASS_TYPE_FILTER - elif isinstance(component_class, bt2.component._SinkComponentClass): + elif isinstance(component_class, bt2_component._SinkComponentClass): cc_ptr = component_class._ptr add_fn = native_bt.graph_add_sink_component cc_type = native_bt.COMPONENT_CLASS_TYPE_SINK - elif issubclass(component_class, bt2.component._UserSourceComponent): + elif issubclass(component_class, bt2_component._UserSourceComponent): cc_ptr = component_class._bt_cc_ptr add_fn = native_bt.graph_add_source_component cc_type = native_bt.COMPONENT_CLASS_TYPE_SOURCE - elif issubclass(component_class, bt2.component._UserSinkComponent): + elif issubclass(component_class, bt2_component._UserSinkComponent): cc_ptr = component_class._bt_cc_ptr add_fn = native_bt.graph_add_sink_component cc_type = native_bt.COMPONENT_CLASS_TYPE_SINK - elif issubclass(component_class, bt2.component._UserFilterComponent): + elif issubclass(component_class, bt2_component._UserFilterComponent): cc_ptr = component_class._bt_cc_ptr add_fn = native_bt.graph_add_filter_component cc_type = native_bt.COMPONENT_CLASS_TYPE_FILTER @@ -125,17 +126,17 @@ class Graph(object._SharedObject): status, comp_ptr = add_fn(self._ptr, cc_ptr, name, params_ptr, logging_level) utils._handle_func_status(status, 'cannot add component to graph') assert comp_ptr - return bt2.component._create_component_from_ptr(comp_ptr, cc_type) + return bt2_component._create_component_from_ptr(comp_ptr, cc_type) def connect_ports(self, upstream_port, downstream_port): - utils._check_type(upstream_port, bt2.port._OutputPort) - utils._check_type(downstream_port, bt2.port._InputPort) + utils._check_type(upstream_port, bt2_port._OutputPort) + utils._check_type(downstream_port, bt2_port._InputPort) status, conn_ptr = native_bt.graph_connect_ports( self._ptr, upstream_port._ptr, downstream_port._ptr ) utils._handle_func_status(status, 'cannot connect component ports within graph') assert conn_ptr - return bt2.connection._Connection._create_from_ptr(conn_ptr) + return bt2_connection._Connection._create_from_ptr(conn_ptr) def add_port_added_listener(self, listener): if not callable(listener): @@ -150,7 +151,7 @@ class Graph(object._SharedObject): if listener_ids is None: raise bt2._Error('cannot add listener to graph object') - return bt2.utils._ListenerHandle(listener_ids, self) + return utils._ListenerHandle(listener_ids, self) def add_ports_connected_listener(self, listener): if not callable(listener): @@ -165,7 +166,7 @@ class Graph(object._SharedObject): if listener_ids is None: raise bt2._Error('cannot add listener to graph object') - return bt2.utils._ListenerHandle(listener_ids, self) + return utils._ListenerHandle(listener_ids, self) def run(self): status = native_bt.graph_run(self._ptr) @@ -179,14 +180,14 @@ class Graph(object._SharedObject): raise def add_interrupter(self, interrupter): - utils._check_type(interrupter, bt2.interrupter.Interrupter) + utils._check_type(interrupter, bt2_interrupter.Interrupter) native_bt.graph_add_interrupter(self._ptr, interrupter._ptr) def interrupt(self): native_bt.graph_interrupt(self._ptr) def create_output_port_message_iterator(self, output_port): - utils._check_type(output_port, bt2.port._OutputPort) + utils._check_type(output_port, bt2_port._OutputPort) msg_iter_ptr = native_bt.port_output_message_iterator_create( self._ptr, output_port._ptr ) @@ -194,4 +195,4 @@ class Graph(object._SharedObject): if msg_iter_ptr is None: raise bt2._MemoryError('cannot create output port message iterator') - return bt2.message_iterator._OutputPortMessageIterator(msg_iter_ptr) + return bt2_message_iterator._OutputPortMessageIterator(msg_iter_ptr) diff --git a/src/bindings/python/bt2/bt2/message.py b/src/bindings/python/bt2/bt2/message.py index 5a1ca32d..5a6240e3 100644 --- a/src/bindings/python/bt2/bt2/message.py +++ b/src/bindings/python/bt2/bt2/message.py @@ -21,10 +21,10 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.clock_snapshot -import bt2.packet -import bt2.stream -import bt2.event +from bt2 import clock_snapshot as bt2_clock_snapshot +from bt2 import packet as bt2_packet +from bt2 import stream as bt2_stream +from bt2 import event as bt2_event import bt2 @@ -49,7 +49,7 @@ class _MessageWithDefaultClockSnapshot: def _get_default_clock_snapshot(self, borrow_clock_snapshot_ptr): snapshot_ptr = borrow_clock_snapshot_ptr(self._ptr) - return bt2.clock_snapshot._ClockSnapshot._create_from_ptr_and_get_ref( + return bt2_clock_snapshot._ClockSnapshot._create_from_ptr_and_get_ref( snapshot_ptr, self._ptr, self._get_ref, self._put_ref ) @@ -68,7 +68,7 @@ class _EventMessage(_Message, _MessageWithDefaultClockSnapshot): def event(self): event_ptr = native_bt.message_event_borrow_event(self._ptr) assert event_ptr is not None - return bt2.event._Event._create_from_ptr_and_get_ref( + return bt2_event._Event._create_from_ptr_and_get_ref( event_ptr, self._ptr, self._get_ref, self._put_ref ) @@ -83,7 +83,7 @@ class _PacketMessage(_Message, _MessageWithDefaultClockSnapshot): def packet(self): packet_ptr = self._borrow_packet_ptr(self._ptr) assert packet_ptr is not None - return bt2.packet._Packet._create_from_ptr_and_get_ref(packet_ptr) + return bt2_packet._Packet._create_from_ptr_and_get_ref(packet_ptr) class _PacketBeginningMessage(_PacketMessage): @@ -105,7 +105,7 @@ class _StreamMessage(_Message, _MessageWithDefaultClockSnapshot): def stream(self): stream_ptr = self._borrow_stream_ptr(self._ptr) assert stream_ptr - return bt2.stream._Stream._create_from_ptr_and_get_ref(stream_ptr) + return bt2_stream._Stream._create_from_ptr_and_get_ref(stream_ptr) @property def default_clock_snapshot(self): @@ -114,9 +114,9 @@ class _StreamMessage(_Message, _MessageWithDefaultClockSnapshot): status, snapshot_ptr = self._borrow_default_clock_snapshot_ptr(self._ptr) if status == native_bt.MESSAGE_STREAM_CLOCK_SNAPSHOT_STATE_UNKNOWN: - return bt2.clock_snapshot._UnknownClockSnapshot() + return bt2_clock_snapshot._UnknownClockSnapshot() - return bt2.clock_snapshot._ClockSnapshot._create_from_ptr_and_get_ref( + return bt2_clock_snapshot._ClockSnapshot._create_from_ptr_and_get_ref( snapshot_ptr, self._ptr, self._get_ref, self._put_ref ) @@ -164,7 +164,7 @@ class _DiscardedMessage(_Message, _MessageWithDefaultClockSnapshot): def stream(self): stream_ptr = self._borrow_stream_ptr(self._ptr) assert stream_ptr - return bt2.stream._Stream._create_from_ptr_and_get_ref(stream_ptr) + return bt2_stream._Stream._create_from_ptr_and_get_ref(stream_ptr) @property def count(self): diff --git a/src/bindings/python/bt2/bt2/message_iterator.py b/src/bindings/python/bt2/bt2/message_iterator.py index 25d3cbb1..8936c0db 100644 --- a/src/bindings/python/bt2/bt2/message_iterator.py +++ b/src/bindings/python/bt2/bt2/message_iterator.py @@ -21,10 +21,14 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.message +from bt2 import message as bt2_message import collections.abc -import bt2.component -import bt2.port +from bt2 import component as bt2_component +from bt2 import stream as bt2_stream +from bt2 import event_class as bt2_event_class +from bt2 import packet as bt2_packet +from bt2 import port as bt2_port +from bt2 import clock_class as bt2_clock_class import bt2 @@ -51,7 +55,7 @@ class _GenericMessageIterator(object._SharedObject, _MessageIterator): msg_ptr = self._current_msgs[self._at] self._at += 1 - return bt2.message._create_from_ptr(msg_ptr) + return bt2_message._create_from_ptr(msg_ptr) @property def can_seek_beginning(self): @@ -122,7 +126,7 @@ class _UserMessageIterator(_MessageIterator): return self def _bt_init_from_native(self, self_output_port_ptr): - self_output_port = bt2.port._create_self_from_ptr_and_get_ref( + self_output_port = bt2_port._create_self_from_ptr_and_get_ref( self_output_port_ptr, native_bt.PORT_TYPE_OUTPUT ) self.__init__(self_output_port) @@ -157,7 +161,7 @@ class _UserMessageIterator(_MessageIterator): except: raise - utils._check_type(msg, bt2.message._Message) + utils._check_type(msg, bt2_message._Message) # The reference we return will be given to the message array. # However, the `msg` Python object may stay alive, if the user has kept @@ -184,7 +188,7 @@ class _UserMessageIterator(_MessageIterator): self._seek_beginning() def _create_input_port_message_iterator(self, input_port): - utils._check_type(input_port, bt2.port._UserComponentInputPort) + utils._check_type(input_port, bt2_port._UserComponentInputPort) msg_iter_ptr = native_bt.self_component_port_input_message_iterator_create_from_message_iterator( self._bt_ptr, input_port._ptr @@ -198,12 +202,12 @@ class _UserMessageIterator(_MessageIterator): def _create_event_message( self, event_class, parent=None, default_clock_snapshot=None ): - utils._check_type(event_class, bt2.event_class._EventClass) + utils._check_type(event_class, bt2_event_class._EventClass) if event_class.stream_class.supports_packets: - utils._check_type(parent, bt2.packet._Packet) + utils._check_type(parent, bt2_packet._Packet) else: - utils._check_type(parent, bt2.stream._Stream) + utils._check_type(parent, bt2_stream._Stream) if default_clock_snapshot is not None: if event_class.stream_class.default_clock_class is None: @@ -239,10 +243,10 @@ class _UserMessageIterator(_MessageIterator): if ptr is None: raise bt2._MemoryError('cannot create event message object') - return bt2.message._EventMessage(ptr) + return bt2_message._EventMessage(ptr) def _create_message_iterator_inactivity_message(self, clock_class, clock_snapshot): - utils._check_type(clock_class, bt2.clock_class._ClockClass) + utils._check_type(clock_class, bt2_clock_class._ClockClass) ptr = native_bt.message_message_iterator_inactivity_create( self._bt_ptr, clock_class._ptr, clock_snapshot ) @@ -250,16 +254,16 @@ class _UserMessageIterator(_MessageIterator): if ptr is None: raise bt2._MemoryError('cannot create inactivity message object') - return bt2.message._MessageIteratorInactivityMessage(ptr) + return bt2_message._MessageIteratorInactivityMessage(ptr) def _create_stream_beginning_message(self, stream, default_clock_snapshot=None): - utils._check_type(stream, bt2.stream._Stream) + utils._check_type(stream, bt2_stream._Stream) ptr = native_bt.message_stream_beginning_create(self._bt_ptr, stream._ptr) if ptr is None: raise bt2._MemoryError('cannot create stream beginning message object') - msg = bt2.message._StreamBeginningMessage(ptr) + msg = bt2_message._StreamBeginningMessage(ptr) if default_clock_snapshot is not None: msg._default_clock_snapshot = default_clock_snapshot @@ -267,13 +271,13 @@ class _UserMessageIterator(_MessageIterator): return msg def _create_stream_end_message(self, stream, default_clock_snapshot=None): - utils._check_type(stream, bt2.stream._Stream) + utils._check_type(stream, bt2_stream._Stream) ptr = native_bt.message_stream_end_create(self._bt_ptr, stream._ptr) if ptr is None: raise bt2._MemoryError('cannot create stream end message object') - msg = bt2.message._StreamEndMessage(ptr) + msg = bt2_message._StreamEndMessage(ptr) if default_clock_snapshot is not None: msg._default_clock_snapshot = default_clock_snapshot @@ -281,7 +285,7 @@ class _UserMessageIterator(_MessageIterator): return msg def _create_packet_beginning_message(self, packet, default_clock_snapshot=None): - utils._check_type(packet, bt2.packet._Packet) + utils._check_type(packet, bt2_packet._Packet) if packet.stream.cls.packets_have_beginning_default_clock_snapshot: if default_clock_snapshot is None: @@ -304,10 +308,10 @@ class _UserMessageIterator(_MessageIterator): if ptr is None: raise bt2._MemoryError('cannot create packet beginning message object') - return bt2.message._PacketBeginningMessage(ptr) + return bt2_message._PacketBeginningMessage(ptr) def _create_packet_end_message(self, packet, default_clock_snapshot=None): - utils._check_type(packet, bt2.packet._Packet) + utils._check_type(packet, bt2_packet._Packet) if packet.stream.cls.packets_have_end_default_clock_snapshot: if default_clock_snapshot is None: @@ -330,12 +334,12 @@ class _UserMessageIterator(_MessageIterator): if ptr is None: raise bt2._MemoryError('cannot create packet end message object') - return bt2.message._PacketEndMessage(ptr) + return bt2_message._PacketEndMessage(ptr) def _create_discarded_events_message( self, stream, count=None, beg_clock_snapshot=None, end_clock_snapshot=None ): - utils._check_type(stream, bt2.stream._Stream) + utils._check_type(stream, bt2_stream._Stream) if not stream.cls.supports_discarded_events: raise ValueError('stream class does not support discarded events') @@ -362,7 +366,7 @@ class _UserMessageIterator(_MessageIterator): if ptr is None: raise bt2._MemoryError('cannot discarded events message object') - msg = bt2.message._DiscardedEventsMessage(ptr) + msg = bt2_message._DiscardedEventsMessage(ptr) if count is not None: msg._count = count @@ -372,7 +376,7 @@ class _UserMessageIterator(_MessageIterator): def _create_discarded_packets_message( self, stream, count=None, beg_clock_snapshot=None, end_clock_snapshot=None ): - utils._check_type(stream, bt2.stream._Stream) + utils._check_type(stream, bt2_stream._Stream) if not stream.cls.supports_discarded_packets: raise ValueError('stream class does not support discarded packets') @@ -399,7 +403,7 @@ class _UserMessageIterator(_MessageIterator): if ptr is None: raise bt2._MemoryError('cannot discarded packets message object') - msg = bt2.message._DiscardedPacketsMessage(ptr) + msg = bt2_message._DiscardedPacketsMessage(ptr) if count is not None: msg._count = count diff --git a/src/bindings/python/bt2/bt2/packet.py b/src/bindings/python/bt2/bt2/packet.py index 266f7bcb..bb629bbd 100644 --- a/src/bindings/python/bt2/bt2/packet.py +++ b/src/bindings/python/bt2/bt2/packet.py @@ -21,7 +21,8 @@ # THE SOFTWARE. from bt2 import native_bt, object -import bt2.field +from bt2 import field as bt2_field +from bt2 import stream as bt2_stream import bt2 @@ -33,7 +34,7 @@ class _Packet(object._SharedObject): def stream(self): stream_ptr = native_bt.packet_borrow_stream(self._ptr) assert stream_ptr is not None - return bt2.stream._Stream._create_from_ptr_and_get_ref(stream_ptr) + return bt2_stream._Stream._create_from_ptr_and_get_ref(stream_ptr) @property def context_field(self): @@ -42,6 +43,6 @@ class _Packet(object._SharedObject): if field_ptr is None: return - return bt2.field._create_field_from_ptr( + return bt2_field._create_field_from_ptr( field_ptr, self._ptr, self._get_ref, self._put_ref ) diff --git a/src/bindings/python/bt2/bt2/plugin.py b/src/bindings/python/bt2/bt2/plugin.py index 597f38f2..d59d0fef 100644 --- a/src/bindings/python/bt2/bt2/plugin.py +++ b/src/bindings/python/bt2/bt2/plugin.py @@ -22,7 +22,7 @@ from bt2 import native_bt, object, utils import collections.abc -import bt2.component +from bt2 import component as bt2_component import os.path import bt2 @@ -180,7 +180,7 @@ class _PluginComponentClassesIterator(collections.abc.Iterator): self._at += 1 comp_cls_type = self._plugin_comp_cls._comp_cls_type - comp_cls_pycls = bt2.component._COMP_CLS_TYPE_TO_GENERIC_COMP_CLS_PYCLS[ + comp_cls_pycls = bt2_component._COMP_CLS_TYPE_TO_GENERIC_COMP_CLS_PYCLS[ comp_cls_type ] comp_cls_ptr = comp_cls_pycls._bt_as_component_class_ptr(comp_cls_ptr) @@ -200,7 +200,7 @@ class _PluginComponentClasses(collections.abc.Mapping): if cc_ptr is None: raise KeyError(key) - return bt2.component._create_component_class_from_ptr_and_get_ref( + return bt2_component._create_component_class_from_ptr_and_get_ref( cc_ptr, self._comp_cls_type ) diff --git a/src/bindings/python/bt2/bt2/port.py b/src/bindings/python/bt2/bt2/port.py index 201e2778..bf11aa94 100644 --- a/src/bindings/python/bt2/bt2/port.py +++ b/src/bindings/python/bt2/bt2/port.py @@ -21,10 +21,10 @@ # THE SOFTWARE. from bt2 import native_bt, object -import bt2.component -import bt2.connection -import bt2.message_iterator -import bt2.message +from bt2 import component as bt2_component +from bt2 import connection as bt2_connection +from bt2 import message_iterator as bt2_message_iterator +from bt2 import message as bt2_message import bt2 @@ -72,7 +72,7 @@ class _Port(object._SharedObject): if conn_ptr is None: return - return bt2.connection._Connection._create_from_ptr_and_get_ref(conn_ptr) + return bt2_connection._Connection._create_from_ptr_and_get_ref(conn_ptr) @property def is_connected(self): @@ -101,7 +101,7 @@ class _UserComponentPort(_Port): if conn_ptr is None: return - return bt2.connection._Connection._create_from_ptr_and_get_ref(conn_ptr) + return bt2_connection._Connection._create_from_ptr_and_get_ref(conn_ptr) @property def user_data(self): diff --git a/src/bindings/python/bt2/bt2/py_plugin.py b/src/bindings/python/bt2/bt2/py_plugin.py index 5f620ab7..9d692f2d 100644 --- a/src/bindings/python/bt2/bt2/py_plugin.py +++ b/src/bindings/python/bt2/bt2/py_plugin.py @@ -21,11 +21,11 @@ # THE SOFTWARE. from bt2 import utils -import bt2.component +from bt2 import component as bt2_component def plugin_component_class(component_class): - if not issubclass(component_class, bt2.component._UserComponent): + if not issubclass(component_class, bt2_component._UserComponent): raise TypeError('component class is not a subclass of a user component class') component_class._bt_plugin_component_class = None diff --git a/src/bindings/python/bt2/bt2/query_executor.py b/src/bindings/python/bt2/bt2/query_executor.py index 2a99ef96..146a2cf4 100644 --- a/src/bindings/python/bt2/bt2/query_executor.py +++ b/src/bindings/python/bt2/bt2/query_executor.py @@ -21,9 +21,10 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.interrupter -import bt2.component -import bt2.logging +from bt2 import interrupter as bt2_interrupter +from bt2 import component as bt2_component +from bt2 import logging as bt2_logging +from bt2 import value as bt2_value import bt2 @@ -40,7 +41,7 @@ class QueryExecutor(object._SharedObject): super().__init__(ptr) def add_interrupter(self, interrupter): - utils._check_type(interrupter, bt2.interrupter.Interrupter) + utils._check_type(interrupter, bt2_interrupter.Interrupter) native_bt.query_executor_add_interrupter(self._ptr, interrupter._ptr) def interrupt(self): @@ -56,13 +57,13 @@ class QueryExecutor(object._SharedObject): component_class, object, params=None, - logging_level=bt2.logging.LoggingLevel.NONE, + logging_level=bt2_logging.LoggingLevel.NONE, ): - if not isinstance(component_class, bt2.component._ComponentClass): + if not isinstance(component_class, bt2_component._ComponentClass): err = False try: - if not issubclass(component_class, bt2.component._UserComponent): + if not issubclass(component_class, bt2_component._UserComponent): err = True except TypeError: err = True @@ -87,4 +88,4 @@ class QueryExecutor(object._SharedObject): ) utils._handle_func_status(status, 'cannot query component class') assert result_ptr - return bt2.value._create_from_ptr(result_ptr) + return bt2_value._create_from_ptr(result_ptr) diff --git a/src/bindings/python/bt2/bt2/stream.py b/src/bindings/python/bt2/bt2/stream.py index 2d966509..3a882179 100644 --- a/src/bindings/python/bt2/bt2/stream.py +++ b/src/bindings/python/bt2/bt2/stream.py @@ -21,12 +21,14 @@ # THE SOFTWARE. from bt2 import native_bt, utils -import bt2.packet -import bt2.event +from bt2 import object as bt2_object +from bt2 import packet as bt2_packet +from bt2 import event as bt2_event +from bt2 import stream_class as bt2_stream_class import bt2 -class _Stream(bt2.object._SharedObject): +class _Stream(bt2_object._SharedObject): _get_ref = staticmethod(native_bt.stream_get_ref) _put_ref = staticmethod(native_bt.stream_put_ref) @@ -34,7 +36,7 @@ class _Stream(bt2.object._SharedObject): def cls(self): stream_class_ptr = native_bt.stream_borrow_class(self._ptr) assert stream_class_ptr is not None - return bt2.stream_class._StreamClass._create_from_ptr_and_get_ref( + return bt2_stream_class._StreamClass._create_from_ptr_and_get_ref( stream_class_ptr ) @@ -64,4 +66,4 @@ class _Stream(bt2.object._SharedObject): if packet_ptr is None: raise bt2._MemoryError('cannot create packet object') - return bt2.packet._Packet._create_from_ptr(packet_ptr) + return bt2_packet._Packet._create_from_ptr(packet_ptr) diff --git a/src/bindings/python/bt2/bt2/stream_class.py b/src/bindings/python/bt2/bt2/stream_class.py index cda21864..0677983b 100644 --- a/src/bindings/python/bt2/bt2/stream_class.py +++ b/src/bindings/python/bt2/bt2/stream_class.py @@ -21,11 +21,12 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.field_class -import bt2.event_class -import bt2.trace_class +from bt2 import field_class as bt2_field_class +from bt2 import event_class as bt2_event_class +from bt2 import trace_class as bt2_trace_class +from bt2 import clock_class as bt2_clock_class import collections.abc -import bt2.stream +from bt2 import stream as bt2_stream import bt2 @@ -40,7 +41,7 @@ class _StreamClass(object._SharedObject, collections.abc.Mapping): if ec_ptr is None: raise KeyError(key) - return bt2.event_class._EventClass._create_from_ptr_and_get_ref(ec_ptr) + return bt2_event_class._EventClass._create_from_ptr_and_get_ref(ec_ptr) def __len__(self): count = native_bt.stream_class_get_event_class_count(self._ptr) @@ -84,7 +85,7 @@ class _StreamClass(object._SharedObject, collections.abc.Mapping): utils._check_uint64(id) ec_ptr = native_bt.event_class_create_with_id(self._ptr, id) - event_class = bt2.event_class._EventClass._create_from_ptr(ec_ptr) + event_class = bt2_event_class._EventClass._create_from_ptr(ec_ptr) if name is not None: event_class._name = name @@ -108,7 +109,7 @@ class _StreamClass(object._SharedObject, collections.abc.Mapping): tc_ptr = native_bt.stream_class_borrow_trace_class_const(self._ptr) if tc_ptr is not None: - return bt2.trace_class._TraceClass._create_from_ptr_and_get_ref(tc_ptr) + return bt2_trace_class._TraceClass._create_from_ptr_and_get_ref(tc_ptr) @property def name(self): @@ -251,12 +252,12 @@ class _StreamClass(object._SharedObject, collections.abc.Mapping): if fc_ptr is None: return - return bt2.field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) + return bt2_field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) def _packet_context_field_class(self, packet_context_field_class): if packet_context_field_class is not None: utils._check_type( - packet_context_field_class, bt2.field_class._StructureFieldClass + packet_context_field_class, bt2_field_class._StructureFieldClass ) if not self.supports_packets: @@ -280,12 +281,12 @@ class _StreamClass(object._SharedObject, collections.abc.Mapping): if fc_ptr is None: return - return bt2.field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) + return bt2_field_class._create_field_class_from_ptr_and_get_ref(fc_ptr) def _event_common_context_field_class(self, event_common_context_field_class): if event_common_context_field_class is not None: utils._check_type( - event_common_context_field_class, bt2.field_class._StructureFieldClass + event_common_context_field_class, bt2_field_class._StructureFieldClass ) set_context_fn = native_bt.stream_class_set_event_common_context_field_class @@ -302,10 +303,10 @@ class _StreamClass(object._SharedObject, collections.abc.Mapping): if cc_ptr is None: return - return bt2.clock_class._ClockClass._create_from_ptr_and_get_ref(cc_ptr) + return bt2_clock_class._ClockClass._create_from_ptr_and_get_ref(cc_ptr) def _default_clock_class(self, clock_class): - utils._check_type(clock_class, bt2.clock_class._ClockClass) + utils._check_type(clock_class, bt2_clock_class._ClockClass) native_bt.stream_class_set_default_clock_class(self._ptr, clock_class._ptr) _default_clock_class = property(fset=_default_clock_class) diff --git a/src/bindings/python/bt2/bt2/trace.py b/src/bindings/python/bt2/bt2/trace.py index db8268db..8a7e0d44 100644 --- a/src/bindings/python/bt2/bt2/trace.py +++ b/src/bindings/python/bt2/bt2/trace.py @@ -21,11 +21,12 @@ # THE SOFTWARE. from bt2 import native_bt, object, utils -import bt2.field_class +from bt2 import field_class as bt2_field_class import collections.abc -import bt2.value -import bt2.stream -import bt2.trace_class +from bt2 import value as bt2_value +from bt2 import stream as bt2_stream +from bt2 import trace_class as bt2_trace_class +from bt2 import stream_class as bt2_stream_class import bt2 import functools import uuid as uuidp @@ -44,7 +45,7 @@ class _TraceEnv(collections.abc.MutableMapping): if value_ptr is None: raise KeyError(key) - return bt2.value._create_from_ptr_and_get_ref(value_ptr) + return bt2_value._create_from_ptr_and_get_ref(value_ptr) def __setitem__(self, key, value): if isinstance(value, str): @@ -76,7 +77,7 @@ class _TraceEnv(collections.abc.MutableMapping): def _trace_destruction_listener_from_native(user_listener, trace_ptr): - trace = bt2.trace._Trace._create_from_ptr_and_get_ref(trace_ptr) + trace = _Trace._create_from_ptr_and_get_ref(trace_ptr) user_listener(trace) @@ -97,7 +98,7 @@ class _Trace(object._SharedObject, collections.abc.Mapping): if stream_ptr is None: raise KeyError(id) - return bt2.stream._Stream._create_from_ptr_and_get_ref(stream_ptr) + return bt2_stream._Stream._create_from_ptr_and_get_ref(stream_ptr) def __iter__(self): for idx in range(len(self)): @@ -113,7 +114,7 @@ class _Trace(object._SharedObject, collections.abc.Mapping): def cls(self): trace_class_ptr = native_bt.trace_borrow_class(self._ptr) assert trace_class_ptr is not None - return bt2.trace_class._TraceClass._create_from_ptr_and_get_ref(trace_class_ptr) + return bt2_trace_class._TraceClass._create_from_ptr_and_get_ref(trace_class_ptr) @property def name(self): @@ -145,7 +146,7 @@ class _Trace(object._SharedObject, collections.abc.Mapping): return _TraceEnv(self) def create_stream(self, stream_class, id=None, name=None): - utils._check_type(stream_class, bt2.stream_class._StreamClass) + utils._check_type(stream_class, bt2_stream_class._StreamClass) if stream_class.assigns_automatic_stream_id: if id is not None: @@ -168,7 +169,7 @@ class _Trace(object._SharedObject, collections.abc.Mapping): if stream_ptr is None: raise bt2._MemoryError('cannot create stream object') - stream = bt2.stream._Stream._create_from_ptr(stream_ptr) + stream = bt2_stream._Stream._create_from_ptr(stream_ptr) if name is not None: stream._name = name @@ -190,4 +191,4 @@ class _Trace(object._SharedObject, collections.abc.Mapping): status, 'cannot add destruction listener to trace object' ) - return bt2.utils._ListenerHandle(listener_id, self) + return utils._ListenerHandle(listener_id, self) diff --git a/src/bindings/python/bt2/bt2/trace_class.py b/src/bindings/python/bt2/bt2/trace_class.py index d349ac0a..64bdc011 100644 --- a/src/bindings/python/bt2/bt2/trace_class.py +++ b/src/bindings/python/bt2/bt2/trace_class.py @@ -26,9 +26,10 @@ __all__ = ['_TraceClass'] import bt2 from bt2 import native_bt, utils, object -import bt2.stream_class -import bt2.field_class -import bt2.trace +from bt2 import stream_class as bt2_stream_class +from bt2 import field_class as bt2_field_class +from bt2 import trace as bt2_trace +from bt2 import trace_class as bt2_trace_class import collections.abc import functools @@ -54,7 +55,7 @@ class _StreamClassIterator(collections.abc.Iterator): def _trace_class_destruction_listener_from_native(user_listener, trace_class_ptr): - trace_class = bt2.trace_class._TraceClass._create_from_ptr_and_get_ref( + trace_class = bt2_trace_class._TraceClass._create_from_ptr_and_get_ref( trace_class_ptr ) user_listener(trace_class) @@ -72,7 +73,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): if trace_ptr is None: raise bt2._MemoryError('cannot create trace class object') - trace = bt2.trace._Trace._create_from_ptr(trace_ptr) + trace = bt2_trace._Trace._create_from_ptr(trace_ptr) if name is not None: trace._name = name @@ -102,7 +103,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): if sc_ptr is None: raise KeyError(key) - return bt2.stream_class._StreamClass._create_from_ptr_and_get_ref(sc_ptr) + return bt2_stream_class._StreamClass._create_from_ptr_and_get_ref(sc_ptr) def __iter__(self): for idx in range(len(self)): @@ -150,7 +151,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): utils._check_uint64(id) sc_ptr = native_bt.stream_class_create_with_id(self._ptr, id) - sc = bt2.stream_class._StreamClass._create_from_ptr(sc_ptr) + sc = bt2_stream_class._StreamClass._create_from_ptr(sc_ptr) if name is not None: sc._name = name @@ -228,7 +229,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): ): return self._create_integer_field_class( native_bt.field_class_integer_signed_create, - bt2.field_class._SignedIntegerFieldClass, + bt2_field_class._SignedIntegerFieldClass, 'signed integer', field_value_range, preferred_display_base, @@ -239,7 +240,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): ): return self._create_integer_field_class( native_bt.field_class_integer_unsigned_create, - bt2.field_class._UnsignedIntegerFieldClass, + bt2_field_class._UnsignedIntegerFieldClass, 'unsigned integer', field_value_range, preferred_display_base, @@ -250,7 +251,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): ): return self._create_integer_field_class( native_bt.field_class_enumeration_signed_create, - bt2.field_class._SignedEnumerationFieldClass, + bt2_field_class._SignedEnumerationFieldClass, 'signed enumeration', field_value_range, preferred_display_base, @@ -261,7 +262,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): ): return self._create_integer_field_class( native_bt.field_class_enumeration_unsigned_create, - bt2.field_class._UnsignedEnumerationFieldClass, + bt2_field_class._UnsignedEnumerationFieldClass, 'unsigned enumeration', field_value_range, preferred_display_base, @@ -271,7 +272,7 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): field_class_ptr = native_bt.field_class_real_create(self._ptr) self._check_create_status(field_class_ptr, 'real') - field_class = bt2.field_class._RealFieldClass._create_from_ptr(field_class_ptr) + field_class = bt2_field_class._RealFieldClass._create_from_ptr(field_class_ptr) field_class._is_single_precision = is_single_precision @@ -281,46 +282,46 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): field_class_ptr = native_bt.field_class_structure_create(self._ptr) self._check_create_status(field_class_ptr, 'structure') - return bt2.field_class._StructureFieldClass._create_from_ptr(field_class_ptr) + return bt2_field_class._StructureFieldClass._create_from_ptr(field_class_ptr) def create_string_field_class(self): field_class_ptr = native_bt.field_class_string_create(self._ptr) self._check_create_status(field_class_ptr, 'string') - return bt2.field_class._StringFieldClass._create_from_ptr(field_class_ptr) + return bt2_field_class._StringFieldClass._create_from_ptr(field_class_ptr) def create_static_array_field_class(self, elem_fc, length): - utils._check_type(elem_fc, bt2.field_class._FieldClass) + utils._check_type(elem_fc, bt2_field_class._FieldClass) utils._check_uint64(length) ptr = native_bt.field_class_array_static_create(self._ptr, elem_fc._ptr, length) self._check_create_status(ptr, 'static array') - return bt2.field_class._StaticArrayFieldClass._create_from_ptr_and_get_ref(ptr) + return bt2_field_class._StaticArrayFieldClass._create_from_ptr_and_get_ref(ptr) def create_dynamic_array_field_class(self, elem_fc, length_fc=None): - utils._check_type(elem_fc, bt2.field_class._FieldClass) + utils._check_type(elem_fc, bt2_field_class._FieldClass) length_fc_ptr = None if length_fc is not None: - utils._check_type(length_fc, bt2.field_class._UnsignedIntegerFieldClass) + utils._check_type(length_fc, bt2_field_class._UnsignedIntegerFieldClass) length_fc_ptr = length_fc._ptr ptr = native_bt.field_class_array_dynamic_create( self._ptr, elem_fc._ptr, length_fc_ptr ) self._check_create_status(ptr, 'dynamic array') - return bt2.field_class._DynamicArrayFieldClass._create_from_ptr(ptr) + return bt2_field_class._DynamicArrayFieldClass._create_from_ptr(ptr) def create_variant_field_class(self, selector_fc=None): selector_fc_ptr = None if selector_fc is not None: - utils._check_type(selector_fc, bt2.field_class._IntegerFieldClass) + utils._check_type(selector_fc, bt2_field_class._IntegerFieldClass) selector_fc_ptr = selector_fc._ptr ptr = native_bt.field_class_variant_create(self._ptr, selector_fc_ptr) self._check_create_status(ptr, 'variant') - return bt2.field_class._create_field_class_from_ptr_and_get_ref(ptr) + return bt2_field_class._create_field_class_from_ptr_and_get_ref(ptr) # Add a listener to be called when the trace class is destroyed. @@ -339,4 +340,4 @@ class _TraceClass(object._SharedObject, collections.abc.Mapping): status, 'cannot add destruction listener to trace class object' ) - return bt2.utils._ListenerHandle(listener_id, self) + return utils._ListenerHandle(listener_id, self) diff --git a/src/bindings/python/bt2/bt2/trace_collection_message_iterator.py b/src/bindings/python/bt2/bt2/trace_collection_message_iterator.py index 1b68d205..06318a9c 100644 --- a/src/bindings/python/bt2/bt2/trace_collection_message_iterator.py +++ b/src/bindings/python/bt2/bt2/trace_collection_message_iterator.py @@ -23,7 +23,9 @@ from bt2 import utils import bt2 import itertools -import bt2.message_iterator +from bt2 import message_iterator as bt2_message_iterator +from bt2 import logging as bt2_logging +from bt2 import port as bt2_port import datetime from collections import namedtuple import numbers @@ -39,7 +41,7 @@ class ComponentSpec: plugin_name, class_name, params=None, - logging_level=bt2.logging.LoggingLevel.NONE, + logging_level=bt2_logging.LoggingLevel.NONE, ): utils._check_str(plugin_name) utils._check_str(class_name) @@ -94,7 +96,7 @@ class _CompClsType: FILTER = 1 -class TraceCollectionMessageIterator(bt2.message_iterator._MessageIterator): +class TraceCollectionMessageIterator(bt2_message_iterator._MessageIterator): def __init__( self, source_component_specs, @@ -291,7 +293,7 @@ class TraceCollectionMessageIterator(bt2.message_iterator._MessageIterator): if not self._connect_ports: return - if type(port) is bt2.port._InputPort: + if type(port) is bt2_port._InputPort: return if component not in [comp.comp for comp in self._src_comps_and_specs]: diff --git a/src/bindings/python/bt2/bt2/utils.py b/src/bindings/python/bt2/bt2/utils.py index 8db257ae..a3df357e 100644 --- a/src/bindings/python/bt2/bt2/utils.py +++ b/src/bindings/python/bt2/bt2/utils.py @@ -21,7 +21,7 @@ # THE SOFTWARE. import bt2 -import bt2.logging +from bt2 import logging as bt2_logging from bt2 import native_bt @@ -117,13 +117,13 @@ def _check_log_level(log_level): _check_int(log_level) log_levels = ( - bt2.logging.LoggingLevel.TRACE, - bt2.logging.LoggingLevel.DEBUG, - bt2.logging.LoggingLevel.INFO, - bt2.logging.LoggingLevel.WARNING, - bt2.logging.LoggingLevel.ERROR, - bt2.logging.LoggingLevel.FATAL, - bt2.logging.LoggingLevel.NONE, + bt2_logging.LoggingLevel.TRACE, + bt2_logging.LoggingLevel.DEBUG, + bt2_logging.LoggingLevel.INFO, + bt2_logging.LoggingLevel.WARNING, + bt2_logging.LoggingLevel.ERROR, + bt2_logging.LoggingLevel.FATAL, + bt2_logging.LoggingLevel.NONE, ) if log_level not in log_levels: diff --git a/src/bindings/python/bt2/bt2/value.py b/src/bindings/python/bt2/bt2/value.py index e7b3969b..104698a0 100644 --- a/src/bindings/python/bt2/bt2/value.py +++ b/src/bindings/python/bt2/bt2/value.py @@ -37,7 +37,7 @@ def _create_from_ptr(ptr): # to it that we are not going to manage anymore, since we don't create a # Python wrapper for it. Therefore put that reference immediately. if ptr == native_bt.value_null: - bt2.value._Value._put_ref(ptr) + _Value._put_ref(ptr) return typeid = native_bt.value_get_type(ptr) diff --git a/tests/bindings/python/bt2/test_component_class.py b/tests/bindings/python/bt2/test_component_class.py index 3e175c83..909b2d64 100644 --- a/tests/bindings/python/bt2/test_component_class.py +++ b/tests/bindings/python/bt2/test_component_class.py @@ -382,7 +382,7 @@ class ComponentClassTestCase(unittest.TestCase): graph = bt2.Graph() comp = graph.add_component(MySink, 'salut') self._comp_cls = comp.cls - self.assertTrue(issubclass(type(self._comp_cls), bt2.component._ComponentClass)) + self.assertTrue(issubclass(type(self._comp_cls), bt2._SinkComponentClass)) def tearDown(self): del self._py_comp_cls diff --git a/tests/bindings/python/bt2/test_error.py b/tests/bindings/python/bt2/test_error.py index c1d63777..9ae8b36c 100644 --- a/tests/bindings/python/bt2/test_error.py +++ b/tests/bindings/python/bt2/test_error.py @@ -107,7 +107,7 @@ class ErrorTestCase(unittest.TestCase): for c in exc: # Each cause is an instance of _ErrorCause (including subclasses). - self.assertIsInstance(c, bt2.error._ErrorCause) + self.assertIsInstance(c, bt2._ErrorCause) def test_getitem(self): exc = self._run_failing_graph(SourceWithFailingIter, WorkingSink) @@ -115,7 +115,7 @@ class ErrorTestCase(unittest.TestCase): for i in range(len(exc)): c = exc[i] # Each cause is an instance of _ErrorCause (including subclasses). - self.assertIsInstance(c, bt2.error._ErrorCause) + self.assertIsInstance(c, bt2._ErrorCause) def test_getitem_indexerror(self): exc = self._run_failing_graph(SourceWithFailingIter, WorkingSink) @@ -138,24 +138,23 @@ class ErrorTestCase(unittest.TestCase): self.assertEqual(len(exc), 5) - self.assertIsInstance(exc[0], bt2.error._MessageIteratorErrorCause) + self.assertIsInstance(exc[0], bt2._MessageIteratorErrorCause) self.assertEqual(exc[0].component_class_name, 'SourceWithFailingIter') self.assertIn('ValueError: User message iterator is failing', exc[0].message) - self.assertIsInstance(exc[1], bt2.error._ErrorCause) + self.assertIsInstance(exc[1], bt2._ErrorCause) - self.assertIsInstance(exc[2], bt2.error._ComponentErrorCause) + self.assertIsInstance(exc[2], bt2._ComponentErrorCause) self.assertEqual(exc[2].component_class_name, 'SinkWithExceptionChaining') self.assertIn( - 'bt2.error._Error: unexpected error: cannot advance the message iterator', - exc[2].message, + 'unexpected error: cannot advance the message iterator', exc[2].message ) - self.assertIsInstance(exc[3], bt2.error._ComponentErrorCause) + self.assertIsInstance(exc[3], bt2._ComponentErrorCause) self.assertEqual(exc[3].component_class_name, 'SinkWithExceptionChaining') self.assertIn('ValueError: oops', exc[3].message) - self.assertIsInstance(exc[4], bt2.error._ErrorCause) + self.assertIsInstance(exc[4], bt2._ErrorCause) def _common_cause_tests(self, cause): self.assertIsInstance(cause.module_name, str) @@ -165,13 +164,13 @@ class ErrorTestCase(unittest.TestCase): def test_unknown_error_cause(self): exc = self._run_failing_graph(SourceWithFailingIter, SinkWithExceptionChaining) cause = exc[-1] - self.assertIs(type(cause), bt2.error._ErrorCause) + self.assertIs(type(cause), bt2._ErrorCause) self._common_cause_tests(cause) def test_component_error_cause(self): exc = self._run_failing_graph(SourceWithFailingInit, SinkWithExceptionChaining) cause = exc[0] - self.assertIs(type(cause), bt2.error._ComponentErrorCause) + self.assertIs(type(cause), bt2._ComponentErrorCause) self._common_cause_tests(cause) self.assertIn('Source is failing', cause.message) @@ -187,7 +186,7 @@ class ErrorTestCase(unittest.TestCase): q.query(SinkWithFailingQuery, 'hello') cause = ctx.exception[0] - self.assertIs(type(cause), bt2.error._ComponentClassErrorCause) + self.assertIs(type(cause), bt2._ComponentClassErrorCause) self._common_cause_tests(cause) self.assertIn('Query is failing', cause.message) @@ -199,7 +198,7 @@ class ErrorTestCase(unittest.TestCase): def test_message_iterator_error_cause(self): exc = self._run_failing_graph(SourceWithFailingIter, SinkWithExceptionChaining) cause = exc[0] - self.assertIs(type(cause), bt2.error._MessageIteratorErrorCause) + self.assertIs(type(cause), bt2._MessageIteratorErrorCause) self._common_cause_tests(cause) self.assertIn('User message iterator is failing', cause.message) diff --git a/tests/bindings/python/bt2/test_field.py b/tests/bindings/python/bt2/test_field.py index b17c175b..e1d8fba7 100644 --- a/tests/bindings/python/bt2/test_field.py +++ b/tests/bindings/python/bt2/test_field.py @@ -1391,7 +1391,7 @@ class _TestArrayFieldCommon: def test_getitem(self): field = self._def[1] - self.assertIs(type(field), bt2.field._SignedIntegerField) + self.assertIs(type(field), bt2._SignedIntegerField) self.assertEqual(field, 1847) def test_eq(self): @@ -1600,7 +1600,7 @@ class StructureFieldTestCase(unittest.TestCase): def test_getitem(self): field = self._def['A'] - self.assertIs(type(field), bt2.field._SignedIntegerField) + self.assertIs(type(field), bt2._SignedIntegerField) self.assertEqual(field, -1872) def test_member_at_index_out_of_bounds_after(self): diff --git a/tests/bindings/python/bt2/test_field_class.py b/tests/bindings/python/bt2/test_field_class.py index 6914dc0f..d9941611 100644 --- a/tests/bindings/python/bt2/test_field_class.py +++ b/tests/bindings/python/bt2/test_field_class.py @@ -371,12 +371,8 @@ class _TestElementContainer: class StructureFieldClassTestCase(_TestElementContainer, unittest.TestCase): - _append_element_method = staticmethod( - bt2.field_class._StructureFieldClass.append_member - ) - _at_index_method = staticmethod( - bt2.field_class._StructureFieldClass.member_at_index - ) + _append_element_method = staticmethod(bt2._StructureFieldClass.append_member) + _at_index_method = staticmethod(bt2._StructureFieldClass.member_at_index) def _create_default_fc(self): return self._tc.create_structure_field_class() @@ -386,10 +382,10 @@ class VariantFieldClassWithoutSelectorTestCase( _TestElementContainer, unittest.TestCase ): _append_element_method = staticmethod( - bt2.field_class._VariantFieldClassWithoutSelector.append_option + bt2._VariantFieldClassWithoutSelector.append_option ) _at_index_method = staticmethod( - bt2.field_class._VariantFieldClassWithoutSelector.option_at_index + bt2._VariantFieldClassWithoutSelector.option_at_index ) def _create_default_fc(self): @@ -617,20 +613,18 @@ class _VariantFieldClassWithSelectorTestCase: self.assertEqual(len(path_items), 3) - self.assertIsInstance(path_items[0], bt2.field_path._IndexFieldPathItem) + self.assertIsInstance(path_items[0], bt2._IndexFieldPathItem) self.assertEqual(path_items[0].index, 1) - self.assertIsInstance( - path_items[1], bt2.field_path._CurrentArrayElementFieldPathItem - ) + self.assertIsInstance(path_items[1], bt2._CurrentArrayElementFieldPathItem) - self.assertIsInstance(path_items[2], bt2.field_path._IndexFieldPathItem) + self.assertIsInstance(path_items[2], bt2._IndexFieldPathItem) self.assertEqual(path_items[2].index, 0) def test_selector_field_path_root_scope(self): self._fill_default_fc_for_field_path_test() self.assertEqual( - self._fc.selector_field_path.root_scope, bt2.field_path.Scope.PACKET_CONTEXT + self._fc.selector_field_path.root_scope, bt2.Scope.PACKET_CONTEXT ) @@ -745,21 +739,17 @@ class DynamicArrayFieldClassTestCase(unittest.TestCase): self.assertEqual(len(path_items), 3) - self.assertIsInstance(path_items[0], bt2.field_path._IndexFieldPathItem) + self.assertIsInstance(path_items[0], bt2._IndexFieldPathItem) self.assertEqual(path_items[0].index, 1) - self.assertIsInstance( - path_items[1], bt2.field_path._CurrentArrayElementFieldPathItem - ) + self.assertIsInstance(path_items[1], bt2._CurrentArrayElementFieldPathItem) - self.assertIsInstance(path_items[2], bt2.field_path._IndexFieldPathItem) + self.assertIsInstance(path_items[2], bt2._IndexFieldPathItem) self.assertEqual(path_items[2].index, 2) def test_field_path_root_scope(self): fc = self._create_field_class_for_field_path_test() - self.assertEqual( - fc.length_field_path.root_scope, bt2.field_path.Scope.PACKET_CONTEXT - ) + self.assertEqual(fc.length_field_path.root_scope, bt2.Scope.PACKET_CONTEXT) def test_create_invalid_field_class(self): with self.assertRaises(TypeError): diff --git a/tests/bindings/python/bt2/test_graph.py b/tests/bindings/python/bt2/test_graph.py index 7a403b5c..453a62ed 100644 --- a/tests/bindings/python/bt2/test_graph.py +++ b/tests/bindings/python/bt2/test_graph.py @@ -306,16 +306,16 @@ class GraphTestCase(unittest.TestCase): msg = next(comp_self._msg_iter) if comp_self._at == 0: - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) elif comp_self._at == 1: - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) elif comp_self._at >= 2 and comp_self._at <= 6: - self.assertIsInstance(msg, bt2.message._EventMessage) + self.assertIsInstance(msg, bt2._EventMessage) self.assertEqual(msg.event.cls.name, 'salut') elif comp_self._at == 7: - self.assertIsInstance(msg, bt2.message._PacketEndMessage) + self.assertIsInstance(msg, bt2._PacketEndMessage) elif comp_self._at == 8: - self.assertIsInstance(msg, bt2.message._StreamEndMessage) + self.assertIsInstance(msg, bt2._StreamEndMessage) comp_self._at += 1 @@ -359,11 +359,11 @@ class GraphTestCase(unittest.TestCase): def _consume(comp_self): msg = next(comp_self._msg_iter) if comp_self._at == 0: - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) elif comp_self._at == 1: - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) elif comp_self._at == 2: - self.assertIsInstance(msg, bt2.message._EventMessage) + self.assertIsInstance(msg, bt2._EventMessage) raise bt2.TryAgain else: pass @@ -417,11 +417,11 @@ class GraphTestCase(unittest.TestCase): def _consume(comp_self): msg = next(comp_self._msg_iter) if comp_self._at == 0: - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) elif comp_self._at == 1: - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) elif comp_self._at == 2: - self.assertIsInstance(msg, bt2.message._EventMessage) + self.assertIsInstance(msg, bt2._EventMessage) elif comp_self._at == 3: nonlocal raised_in_sink raised_in_sink = True diff --git a/tests/bindings/python/bt2/test_message.py b/tests/bindings/python/bt2/test_message.py index 3b89337a..da91b753 100644 --- a/tests/bindings/python/bt2/test_message.py +++ b/tests/bindings/python/bt2/test_message.py @@ -154,26 +154,24 @@ class AllMessagesTestCase(unittest.TestCase): for i, msg in enumerate(self._msg_iter): if i == 0: - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) self.assertEqual(msg.stream.addr, self._stream.addr) self.assertIsInstance( - msg.default_clock_snapshot, bt2.clock_snapshot._UnknownClockSnapshot + msg.default_clock_snapshot, bt2._UnknownClockSnapshot ) elif i == 1: - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) self.assertEqual(msg.packet.addr, self._packet.addr) self.assertEqual(msg.default_clock_snapshot.value, i) elif i == 2: - self.assertIsInstance(msg, bt2.message._EventMessage) + self.assertIsInstance(msg, bt2._EventMessage) self.assertEqual(msg.event.cls.addr, self._event_class.addr) self.assertEqual(msg.default_clock_snapshot.value, i) elif i == 3: - self.assertIsInstance( - msg, bt2.message._MessageIteratorInactivityMessage - ) + self.assertIsInstance(msg, bt2._MessageIteratorInactivityMessage) self.assertEqual(msg.default_clock_snapshot.value, i) elif i == 4: - self.assertIsInstance(msg, bt2.message._DiscardedEventsMessage) + self.assertIsInstance(msg, bt2._DiscardedEventsMessage) self.assertEqual(msg.stream.addr, self._stream.addr) self.assertEqual(msg.count, 890) self.assertEqual( @@ -182,11 +180,11 @@ class AllMessagesTestCase(unittest.TestCase): self.assertEqual(msg.beginning_default_clock_snapshot.value, i) self.assertEqual(msg.end_default_clock_snapshot.value, i) elif i == 5: - self.assertIsInstance(msg, bt2.message._PacketEndMessage) + self.assertIsInstance(msg, bt2._PacketEndMessage) self.assertEqual(msg.packet.addr, self._packet.addr) self.assertEqual(msg.default_clock_snapshot.value, i) elif i == 6: - self.assertIsInstance(msg, bt2.message._DiscardedPacketsMessage) + self.assertIsInstance(msg, bt2._DiscardedPacketsMessage) self.assertEqual(msg.stream.addr, self._stream.addr) self.assertEqual(msg.count, 678) self.assertEqual( @@ -195,10 +193,10 @@ class AllMessagesTestCase(unittest.TestCase): self.assertEqual(msg.beginning_default_clock_snapshot.value, i) self.assertEqual(msg.end_default_clock_snapshot.value, i) elif i == 7: - self.assertIsInstance(msg, bt2.message._StreamEndMessage) + self.assertIsInstance(msg, bt2._StreamEndMessage) self.assertEqual(msg.stream.addr, self._stream.addr) self.assertIsInstance( - msg.default_clock_snapshot, bt2.clock_snapshot._UnknownClockSnapshot + msg.default_clock_snapshot, bt2._UnknownClockSnapshot ) else: raise Exception @@ -212,24 +210,24 @@ class AllMessagesTestCase(unittest.TestCase): for i, msg in enumerate(self._msg_iter): if i == 0: - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) self.assertEqual(msg.stream.addr, self._stream.addr) with self.assertRaisesRegex( ValueError, 'stream class has no default clock class' ): msg.default_clock_snapshot elif i == 1: - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) self.assertEqual(msg.packet.addr, self._packet.addr) elif i == 2: - self.assertIsInstance(msg, bt2.message._EventMessage) + self.assertIsInstance(msg, bt2._EventMessage) self.assertEqual(msg.event.cls.addr, self._event_class.addr) with self.assertRaisesRegex( ValueError, 'stream class has no default clock class' ): msg.default_clock_snapshot elif i == 3: - self.assertIsInstance(msg, bt2.message._DiscardedEventsMessage) + self.assertIsInstance(msg, bt2._DiscardedEventsMessage) self.assertEqual(msg.stream.addr, self._stream.addr) self.assertEqual(msg.count, 890) self.assertIsNone(msg.stream.cls.default_clock_class) @@ -244,10 +242,10 @@ class AllMessagesTestCase(unittest.TestCase): ): msg.end_default_clock_snapshot elif i == 4: - self.assertIsInstance(msg, bt2.message._PacketEndMessage) + self.assertIsInstance(msg, bt2._PacketEndMessage) self.assertEqual(msg.packet.addr, self._packet.addr) elif i == 5: - self.assertIsInstance(msg, bt2.message._DiscardedPacketsMessage) + self.assertIsInstance(msg, bt2._DiscardedPacketsMessage) self.assertEqual(msg.stream.addr, self._stream.addr) self.assertEqual(msg.count, 678) self.assertIsNone(msg.stream.cls.default_clock_class) @@ -262,7 +260,7 @@ class AllMessagesTestCase(unittest.TestCase): ): msg.end_default_clock_snapshot elif i == 6: - self.assertIsInstance(msg, bt2.message._StreamEndMessage) + self.assertIsInstance(msg, bt2._StreamEndMessage) self.assertEqual(msg.stream.addr, self._stream.addr) with self.assertRaisesRegex( ValueError, 'stream class has no default clock class' @@ -281,9 +279,9 @@ class AllMessagesTestCase(unittest.TestCase): msgs = list(self._msg_iter) msg_stream_beg = msgs[0] - self.assertIsInstance(msg_stream_beg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg_stream_beg, bt2._StreamBeginningMessage) self.assertEqual(msg_stream_beg.default_clock_snapshot.value, 0) msg_stream_end = msgs[7] - self.assertIsInstance(msg_stream_end, bt2.message._StreamEndMessage) + self.assertIsInstance(msg_stream_end, bt2._StreamEndMessage) self.assertEqual(msg_stream_end.default_clock_snapshot.value, 7) diff --git a/tests/bindings/python/bt2/test_message_iterator.py b/tests/bindings/python/bt2/test_message_iterator.py index f780cf2c..c8d2cf16 100644 --- a/tests/bindings/python/bt2/test_message_iterator.py +++ b/tests/bindings/python/bt2/test_message_iterator.py @@ -200,15 +200,15 @@ class UserMessageIteratorTestCase(unittest.TestCase): # Skip beginning messages. msg = next(it) - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) msg = next(it) - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) msg_ev1 = next(it) msg_ev2 = next(it) - self.assertIsInstance(msg_ev1, bt2.message._EventMessage) - self.assertIsInstance(msg_ev2, bt2.message._EventMessage) + self.assertIsInstance(msg_ev1, bt2._EventMessage) + self.assertIsInstance(msg_ev2, bt2._EventMessage) self.assertEqual(msg_ev1.addr, msg_ev2.addr) @staticmethod @@ -315,14 +315,14 @@ class UserMessageIteratorTestCase(unittest.TestCase): it, MySourceIter = self._setup_seek_beginning_test() msg = next(it) - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) msg = next(it) - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) it.seek_beginning() msg = next(it) - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) # Verify that we can seek beginning after having reached the end. # @@ -338,7 +338,7 @@ class UserMessageIteratorTestCase(unittest.TestCase): # # it.seek_beginning() # msg = next(it) - # self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + # self.assertIsInstance(msg, bt2._StreamBeginningMessage) def test_seek_beginning_user_error(self): it, MySourceIter = self._setup_seek_beginning_test() @@ -433,15 +433,15 @@ class OutputPortMessageIteratorTestCase(unittest.TestCase): for at, msg in enumerate(msg_iter): if at == 0: - self.assertIsInstance(msg, bt2.message._StreamBeginningMessage) + self.assertIsInstance(msg, bt2._StreamBeginningMessage) elif at == 1: - self.assertIsInstance(msg, bt2.message._PacketBeginningMessage) + self.assertIsInstance(msg, bt2._PacketBeginningMessage) elif at == 5: - self.assertIsInstance(msg, bt2.message._PacketEndMessage) + self.assertIsInstance(msg, bt2._PacketEndMessage) elif at == 6: - self.assertIsInstance(msg, bt2.message._StreamEndMessage) + self.assertIsInstance(msg, bt2._StreamEndMessage) else: - self.assertIsInstance(msg, bt2.message._EventMessage) + self.assertIsInstance(msg, bt2._EventMessage) self.assertEqual(msg.event.cls.name, 'salut') field = msg.event.payload_field['my_int'] self.assertEqual(field, at * 3) diff --git a/tests/bindings/python/bt2/test_plugin.py b/tests/bindings/python/bt2/test_plugin.py index 68400ccb..e37e5ee6 100644 --- a/tests/bindings/python/bt2/test_plugin.py +++ b/tests/bindings/python/bt2/test_plugin.py @@ -18,7 +18,6 @@ import unittest import bt2 -import bt2.plugin import os @@ -81,7 +80,6 @@ class FindPluginTestCase(unittest.TestCase): def test_find_existing(self): plugin = bt2.find_plugin('ctf', find_in_user_dir=False, find_in_sys_dir=False) - self.assertIsInstance(plugin, bt2.plugin._Plugin) class PluginTestCase(unittest.TestCase): diff --git a/tests/bindings/python/bt2/test_query_executor.py b/tests/bindings/python/bt2/test_query_executor.py index a5d852f5..52af4664 100644 --- a/tests/bindings/python/bt2/test_query_executor.py +++ b/tests/bindings/python/bt2/test_query_executor.py @@ -103,7 +103,7 @@ class QueryExecutorTestCase(unittest.TestCase): exc = ctx.exception self.assertEqual(len(exc), 2) cause = exc[0] - self.assertIsInstance(cause, bt2.error._ComponentClassErrorCause) + self.assertIsInstance(cause, bt2._ComponentClassErrorCause) self.assertIn('raise ValueError', cause.message) self.assertEqual(cause.component_class_type, bt2.ComponentClassType.SINK) self.assertEqual(cause.component_class_name, 'MySink') diff --git a/tests/bindings/python/bt2/test_trace_class.py b/tests/bindings/python/bt2/test_trace_class.py index cf286658..2ad83001 100644 --- a/tests/bindings/python/bt2/test_trace_class.py +++ b/tests/bindings/python/bt2/test_trace_class.py @@ -116,8 +116,6 @@ class TraceClassTestCase(unittest.TestCase): tc, sc1, sc2, sc3 = self._create_trace_class_with_some_stream_classes() for sc_id, stream_class in tc.items(): - self.assertIsInstance(stream_class, bt2.stream_class._StreamClass) - if sc_id == 12: self.assertEqual(stream_class.addr, sc1.addr) elif sc_id == 54: diff --git a/tests/bindings/python/bt2/test_trace_collection_message_iterator.py b/tests/bindings/python/bt2/test_trace_collection_message_iterator.py index 25c1373a..22de3f36 100644 --- a/tests/bindings/python/bt2/test_trace_collection_message_iterator.py +++ b/tests/bindings/python/bt2/test_trace_collection_message_iterator.py @@ -114,7 +114,7 @@ class TraceCollectionMessageIteratorTestCase(unittest.TestCase): msgs = list(msg_iter) self.assertEqual(len(msgs), 28) hist = _count_msgs_by_type(msgs) - self.assertEqual(hist[bt2.message._EventMessage], 8) + self.assertEqual(hist[bt2._EventMessage], 8) # Same as the above, but we pass a single spec instead of a spec list. def test_iter_specs_not_list(self): @@ -123,14 +123,14 @@ class TraceCollectionMessageIteratorTestCase(unittest.TestCase): msgs = list(msg_iter) self.assertEqual(len(msgs), 28) hist = _count_msgs_by_type(msgs) - self.assertEqual(hist[bt2.message._EventMessage], 8) + self.assertEqual(hist[bt2._EventMessage], 8) def test_iter_custom_filter(self): src_spec = bt2.ComponentSpec('ctf', 'fs', _3EVENTS_INTERSECT_TRACE_PATH) flt_spec = bt2.ComponentSpec('utils', 'trimmer', {'end': '13515309.000000075'}) msg_iter = bt2.TraceCollectionMessageIterator(src_spec, flt_spec) hist = _count_msgs_by_type(msg_iter) - self.assertEqual(hist[bt2.message._EventMessage], 5) + self.assertEqual(hist[bt2._EventMessage], 5) def test_iter_intersection(self): specs = [bt2.ComponentSpec('ctf', 'fs', _3EVENTS_INTERSECT_TRACE_PATH)] @@ -140,7 +140,7 @@ class TraceCollectionMessageIteratorTestCase(unittest.TestCase): msgs = list(msg_iter) self.assertEqual(len(msgs), 15) hist = _count_msgs_by_type(msgs) - self.assertEqual(hist[bt2.message._EventMessage], 3) + self.assertEqual(hist[bt2._EventMessage], 3) def test_iter_intersection_no_inputs_param(self): specs = [bt2.ComponentSpec('text', 'dmesg', {'read-from-stdin': True})] @@ -155,16 +155,16 @@ class TraceCollectionMessageIteratorTestCase(unittest.TestCase): msgs = list(msg_iter) self.assertEqual(len(msgs), 56) hist = _count_msgs_by_type(msgs) - self.assertEqual(hist[bt2.message._EventMessage], 16) + self.assertEqual(hist[bt2._EventMessage], 16) def test_iter_no_intersection_begin(self): specs = [bt2.ComponentSpec('ctf', 'fs', _3EVENTS_INTERSECT_TRACE_PATH)] msg_iter = bt2.TraceCollectionMessageIterator(specs, begin=13515309.000000023) hist = _count_msgs_by_type(msg_iter) - self.assertEqual(hist[bt2.message._EventMessage], 6) + self.assertEqual(hist[bt2._EventMessage], 6) def test_iter_no_intersection_end(self): specs = [bt2.ComponentSpec('ctf', 'fs', _3EVENTS_INTERSECT_TRACE_PATH)] msg_iter = bt2.TraceCollectionMessageIterator(specs, end=13515309.000000075) hist = _count_msgs_by_type(msg_iter) - self.assertEqual(hist[bt2.message._EventMessage], 5) + self.assertEqual(hist[bt2._EventMessage], 5) -- 2.34.1