6 from ament_index_python.packages
import get_package_share_directory
7 from moveit_configs_utils
import MoveItConfigsBuilder
8 from launch_param_builder
import ParameterBuilder
14 .robot_description(file_path=
"config/panda.urdf.xacro")
20 "moveit_servo_test": ParameterBuilder(
"moveit_servo")
21 .yaml(
"config/test_config_panda.yaml")
26 acceleration_filter_update_period = {
"update_period": 0.01}
27 planning_group_name = {
"planning_group_name":
"panda_arm"}
30 ros2_controllers_path = os.path.join(
33 "ros2_controllers.yaml",
35 ros2_control_node = launch_ros.actions.Node(
36 package=
"controller_manager",
37 executable=
"ros2_control_node",
38 parameters=[ros2_controllers_path],
40 (
"/controller_manager/robot_description",
"/robot_description"),
45 joint_state_broadcaster_spawner = launch_ros.actions.Node(
46 package=
"controller_manager",
49 "joint_state_broadcaster",
50 "--controller-manager-timeout",
52 "--controller-manager",
53 "/controller_manager",
57 panda_arm_controller_spawner = launch_ros.actions.Node(
58 package=
"controller_manager",
60 arguments=[
"panda_arm_controller",
"-c",
"/controller_manager"],
64 test_container = launch_ros.actions.ComposableNodeContainer(
65 name=
"servo_integration_tests_container",
67 package=
"rclcpp_components",
68 executable=
"component_container_mt",
69 composable_node_descriptions=[
70 launch_ros.descriptions.ComposableNode(
71 package=
"robot_state_publisher",
72 plugin=
"robot_state_publisher::RobotStatePublisher",
73 name=
"robot_state_publisher",
74 parameters=[moveit_config.robot_description],
76 launch_ros.descriptions.ComposableNode(
78 plugin=
"tf2_ros::StaticTransformBroadcasterNode",
79 name=
"static_tf2_broadcaster",
80 parameters=[{
"child_frame_id":
"/panda_link0",
"frame_id":
"/world"}],
86 servo_gtest = launch_ros.actions.Node(
87 executable=launch.substitutions.PathJoinSubstitution(
89 launch.substitutions.LaunchConfiguration(
"test_binary_dir"),
90 "moveit_servo_cpp_integration_test",
95 acceleration_filter_update_period,
97 moveit_config.robot_description,
98 moveit_config.robot_description_semantic,
99 moveit_config.robot_description_kinematics,
104 return launch.LaunchDescription(
106 launch.actions.DeclareLaunchArgument(
107 name=
"test_binary_dir",
108 description=
"Binary directory of package "
109 "containing test executables",
112 joint_state_broadcaster_spawner,
113 panda_arm_controller_spawner,
115 launch.actions.TimerAction(period=5.0, actions=[servo_gtest]),
116 launch_testing.actions.ReadyToTest(),
119 "servo_gtest": servo_gtest,
126 self.proc_info.assertWaitForShutdown(servo_gtest, timeout=4000.0)
129 @launch_testing.post_shutdown_test()
133 launch_testing.asserts.assertExitCodes(proc_info, process=servo_gtest)
def test_gtest_pass(self, proc_info, servo_gtest)
def test_gtest_run_complete(self, servo_gtest)
def get_package_share_directory(pkg_name)
def generate_test_description()