@@ -462,6 +462,8 @@ TEST_F(TestControllerManagerSrvs, unload_controller_srv)
462
462
463
463
result = call_service_and_wait (*client, request, srv_executor, true );
464
464
ASSERT_TRUE (result->ok );
465
+ EXPECT_EQ (
466
+ lifecycle_msgs::msg::State::PRIMARY_STATE_UNCONFIGURED, test_controller->get_state ().id ());
465
467
EXPECT_EQ (0u , cm_->get_loaded_controllers ().size ());
466
468
}
467
469
@@ -473,6 +475,9 @@ TEST_F(TestControllerManagerSrvs, configure_controller_srv)
473
475
rclcpp::Client<controller_manager_msgs::srv::ConfigureController>::SharedPtr client =
474
476
srv_node->create_client <controller_manager_msgs::srv::ConfigureController>(
475
477
" test_controller_manager/configure_controller" );
478
+ rclcpp::Client<controller_manager_msgs::srv::UnloadController>::SharedPtr unload_client =
479
+ srv_node->create_client <controller_manager_msgs::srv::UnloadController>(
480
+ " test_controller_manager/unload_controller" );
476
481
477
482
auto request = std::make_shared<controller_manager_msgs::srv::ConfigureController::Request>();
478
483
request->name = test_controller::TEST_CONTROLLER_NAME;
@@ -491,6 +496,15 @@ TEST_F(TestControllerManagerSrvs, configure_controller_srv)
491
496
EXPECT_EQ (
492
497
lifecycle_msgs::msg::State::PRIMARY_STATE_INACTIVE,
493
498
cm_->get_loaded_controllers ()[0 ].c ->get_state ().id ());
499
+ EXPECT_EQ (lifecycle_msgs::msg::State::PRIMARY_STATE_INACTIVE, test_controller->get_state ().id ());
500
+
501
+ // now unload the controller and check the state
502
+ auto unload_request = std::make_shared<controller_manager_msgs::srv::UnloadController::Request>();
503
+ unload_request->name = test_controller::TEST_CONTROLLER_NAME;
504
+ ASSERT_TRUE (call_service_and_wait (*unload_client, unload_request, srv_executor, true )->ok );
505
+ EXPECT_EQ (
506
+ lifecycle_msgs::msg::State::PRIMARY_STATE_UNCONFIGURED, test_controller->get_state ().id ());
507
+ EXPECT_EQ (0u , cm_->get_loaded_controllers ().size ());
494
508
}
495
509
496
510
TEST_F (TestControllerManagerSrvs, list_sorted_chained_controllers)
0 commit comments