fix: 阻止重复遥操作节点继续运行
This commit is contained in:
@@ -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"),
|
||||
|
||||
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user