From c21a250a06fe2ba024acf7da51821735912e10b1 Mon Sep 17 00:00:00 2001 From: dhood Date: Tue, 17 Jul 2018 08:18:23 +1000 Subject: [PATCH] Add regression test for node:__ns remapping (#263) * Add regression test for node:__ns remapping * Fix node:=__ns remapping * Finalize node in remap integration test --- rcl/src/rcl/node.c | 2 +- rcl/test/rcl/test_remap_integration.cpp | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/rcl/src/rcl/node.c b/rcl/src/rcl/node.c index c64e760..ab36c9a 100644 --- a/rcl/src/rcl/node.c +++ b/rcl/src/rcl/node.c @@ -244,7 +244,7 @@ rcl_node_init( } char * remapped_namespace = NULL; ret = rcl_remap_node_namespace( - &(node->impl->options.arguments), global_args, local_namespace_, + &(node->impl->options.arguments), global_args, name, *allocator, &remapped_namespace); if (RCL_RET_OK != ret) { goto fail; diff --git a/rcl/test/rcl/test_remap_integration.cpp b/rcl/test/rcl/test_remap_integration.cpp index 6fc44bc..ca7c0af 100644 --- a/rcl/test/rcl/test_remap_integration.cpp +++ b/rcl/test/rcl/test_remap_integration.cpp @@ -288,3 +288,19 @@ TEST_F(CLASSNAME(TestRemapIntegrationFixture, RMW_IMPLEMENTATION), remap_relativ EXPECT_EQ(RCL_RET_OK, rcl_node_fini(&node)); } + +TEST_F(CLASSNAME(TestRemapIntegrationFixture, RMW_IMPLEMENTATION), remap_using_node_rules) { + int argc; + char ** argv; + SCOPE_GLOBAL_ARGS( + argc, argv, "process_name", "original_name:__ns:=/new_ns"); + + rcl_node_t node = rcl_get_zero_initialized_node(); + rcl_node_options_t default_options = rcl_node_get_default_options(); + ASSERT_EQ(RCL_RET_OK, rcl_node_init(&node, "original_name", "", &default_options)); + + { // Node namespace gets remapped + EXPECT_STREQ("/new_ns", rcl_node_get_namespace(&node)); + } + EXPECT_EQ(RCL_RET_OK, rcl_node_fini(&node)); +}