def test_push_ros_namespace(config): lc = LaunchContext() if config.push_ns is not None: pns1 = PushRosNamespace(config.push_ns) pns1.execute(lc) if config.second_push_ns is not None: pns2 = PushRosNamespace(config.second_push_ns) pns2.execute(lc) node = Node( package='dont_care', executable='whatever', node_namespace=config.node_ns, ) node._perform_substitutions(lc) expected_ns = config.expected_ns if config.expected_ns is not None else '' assert expected_ns == node.expanded_node_namespace
def test_push_ros_namespace_with_composable_node(config): lc = MockContext() if config.push_ns is not None: pns1 = PushRosNamespace(config.push_ns) pns1.execute(lc) if config.second_push_ns is not None: pns2 = PushRosNamespace(config.second_push_ns) pns2.execute(lc) node_description = ComposableNode( package='asd', plugin='my_plugin', namespace=config.node_ns, name=config.node_name, ) request = get_composable_node_load_request(node_description, lc) expected_ns = config.expected_ns if config.expected_ns is not None else '' assert expected_ns == request.node_namespace
def test_push_ros_namespace(config): lc = LaunchContext() if config.push_ns is not None: pns1 = PushRosNamespace(config.push_ns) pns1.execute(lc) if config.second_push_ns is not None: pns2 = PushRosNamespace(config.second_push_ns) pns2.execute(lc) node = Node(package='dont_care', executable='whatever', namespace=config.node_ns, name=config.node_name) node._perform_substitutions(lc) expected_ns = (config.expected_ns if config.expected_ns is not None else Node.UNSPECIFIED_NODE_NAMESPACE) expected_name = (config.node_name if config.node_name is not None else Node.UNSPECIFIED_NODE_NAME) expected_fqn = expected_ns.rstrip('/') + '/' + expected_name assert expected_ns == node.expanded_node_namespace assert expected_fqn == node.node_name