diff --git a/rclcpp/src/rclcpp/init_options.cpp b/rclcpp/src/rclcpp/init_options.cpp index ad2a900..f9fd6f5 100644 --- a/rclcpp/src/rclcpp/init_options.cpp +++ b/rclcpp/src/rclcpp/init_options.cpp @@ -44,6 +44,7 @@ InitOptions::InitOptions(const InitOptions & other) : InitOptions(*other.get_rcl_init_options()) { shutdown_on_sigint = other.shutdown_on_sigint; + initialize_logging_ = other.initialize_logging_; } bool @@ -69,6 +70,7 @@ InitOptions::operator=(const InitOptions & other) rclcpp::exceptions::throw_from_rcl_error(ret, "failed to copy rcl init options"); } this->shutdown_on_sigint = other.shutdown_on_sigint; + this->initialize_logging_ = other.initialize_logging_; } return *this; } diff --git a/rclcpp/test/rclcpp/test_init_options.cpp b/rclcpp/test/rclcpp/test_init_options.cpp index ecbe1e7..3c0cae7 100644 --- a/rclcpp/test/rclcpp/test_init_options.cpp +++ b/rclcpp/test/rclcpp/test_init_options.cpp @@ -44,3 +44,20 @@ TEST(TestInitOptions, test_construction) { ASSERT_TRUE(rcl_options_copy->impl != nullptr); } } + +TEST(TestInitOptions, test_initialize_logging) { + { + auto options = rclcpp::InitOptions(); + EXPECT_TRUE(options.auto_initialize_logging()); + } + + { + auto options = rclcpp::InitOptions().auto_initialize_logging(true); + EXPECT_TRUE(options.auto_initialize_logging()); + } + + { + auto options = rclcpp::InitOptions().auto_initialize_logging(false); + EXPECT_FALSE(options.auto_initialize_logging()); + } +}