fix: 阻止重复遥操作节点继续运行

This commit is contained in:
2026-08-04 14:36:16 +08:00
parent 1fefae34e5
commit b24165640d
2 changed files with 11 additions and 2 deletions
+4 -1
View File
@@ -8,7 +8,7 @@
from pathlib import Path
from launch import LaunchDescription
from launch.actions import DeclareLaunchArgument, OpaqueFunction
from launch.actions import DeclareLaunchArgument, OpaqueFunction, Shutdown
from launch.substitutions import LaunchConfiguration, PathJoinSubstitution
from launch_ros.actions import Node
from launch_ros.substitutions import FindPackageShare
@@ -47,6 +47,9 @@ def _udp_receiver_node() -> Node:
executable="udp_controller_receiver",
name="udp_controller_receiver",
output="screen",
on_exit=Shutdown(
reason="XR UDP receiver exited; stopping arm_debug launch"
),
parameters=[{
"udp_host": LaunchConfiguration("udp_host"),
"udp_port": LaunchConfiguration("udp_port"),
+7 -1
View File
@@ -3,7 +3,7 @@ from pathlib import Path
import pytest
from launch import LaunchContext
from launch.actions import DeclareLaunchArgument
from launch.actions import DeclareLaunchArgument, Shutdown
from launch.utilities import perform_substitutions
@@ -35,3 +35,9 @@ def test_mujoco_mode_requires_both_arms() -> None:
with pytest.raises(ValueError, match="arm:=both"):
arm_debug_launch._validate_mujoco_mode("left", True)
def test_udp_receiver_exit_shuts_down_launch() -> None:
receiver = arm_debug_launch._udp_receiver_node()
assert isinstance(receiver._ExecuteLocal__on_exit, Shutdown)