Skip to content

Commit 01dde48

Browse files
committed
Fix launch tests [skip ci]
1 parent da2cb0f commit 01dde48

File tree

4 files changed

+11
-20
lines changed

4 files changed

+11
-20
lines changed

ros/gisnav/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ SHELL := /bin/bash
33
# test
44
.PHONY: test-sitl
55
test-sitl:
6-
@python gisnav/test/sitl/test_sitl.py px4 \
6+
@python test/sitl/test_sitl.py px4 \
77
|| (echo "SITL test failed, exit code: $$?"; exit 1)
88

99
.PHONY: test-launch
1010
test-launch:
11-
@launch_test gisnav/test/launch/test_default_launch.py
11+
@launch_test test/launch/test_default_launch.py
1212

1313
.PHONY: test-unit
1414
test-unit:

ros/gisnav/gisnav/__init__.py

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,14 @@
1010
import cProfile
1111
import io
1212
import pstats
13-
from threading import Thread
1413
from typing import Optional, Union
1514

1615
import rclpy
17-
from rclpy.executors import MultiThreadedExecutor, SingleThreadedExecutor
16+
from rclpy.executors import (
17+
ExternalShutdownException,
18+
MultiThreadedExecutor,
19+
SingleThreadedExecutor,
20+
)
1821
from rclpy.node import Node
1922

2023
from .constants import (
@@ -107,7 +110,6 @@ def _run(constructor: rclpy.node.Node, *args, **kwargs):
107110

108111
node: Optional[Node] = None
109112
executor: Optional[Union[MultiThreadedExecutor, SingleThreadedExecutor]] = None
110-
spin_thread: Optional[Thread] = None
111113

112114
try:
113115
rclpy.init()
@@ -128,17 +130,13 @@ def _run(constructor: rclpy.node.Node, *args, **kwargs):
128130
executor = MultiThreadedExecutor()
129131
executor.add_node(node)
130132
executor.spin()
131-
132-
# spin_thread = Thread(target=executor.spin, daemon=True)
133-
# spin_thread.start()
134-
# spin_thread.join()
135133
else:
136134
executor = SingleThreadedExecutor()
137135
executor.add_node(node)
138136
executor.spin()
139137

140-
except KeyboardInterrupt as e:
141-
print(f"Keyboard interrupt received:\n{e}")
138+
except (KeyboardInterrupt, ExternalShutdownException) as e:
139+
print(f"External shutdown/keyboard interrupt received:\n{e}")
142140
if profile is not None:
143141
assert __debug__
144142
# Print out cProfile stats
@@ -151,10 +149,9 @@ def _run(constructor: rclpy.node.Node, *args, **kwargs):
151149
finally:
152150
if executor is not None:
153151
executor.shutdown()
154-
if spin_thread is not None:
155-
spin_thread.join()
156152
if node is not None:
157153
node.destroy_node()
154+
158155
rclpy.shutdown()
159156

160157

ros/gisnav/test/launch/test_default_launch.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
def generate_test_description():
1515
"""Generates a PX4 launch description"""
1616
dirname = os.path.dirname(__file__)
17-
filename = os.path.join(dirname, "../../launch/default.launch.py")
17+
filename = os.path.join(dirname, "../../launch/local.launch.py")
1818
ld = IncludeLaunchDescription(PythonLaunchDescriptionSource(filename))
1919
return LaunchDescription(
2020
[

ros/gisnav/test/launch/testcases.py

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,10 @@ class TestTopographyCase(unittest.TestCase):
3333
"/gisnav/bbox_node/fov/bounding_box",
3434
"/gisnav/gis_node/orthoimage",
3535
"/gisnav/stereo_node/pose_image",
36-
"/gisnav/stereo_node/twist_image",
3736
"/gisnav/pose_node/pose",
38-
"/gisnav/pose_node/vo/pose",
3937
"/mavros/gimbal_control/device/attitude_status",
4038
"/mavros/global_position/global",
4139
"/mavros/local_position/pose",
42-
"/mavros/time_reference",
4340
"/rosout",
4441
"/tf",
4542
"/tf_static",
@@ -53,13 +50,10 @@ class TestTopographyCase(unittest.TestCase):
5350
"geographic_msgs/msg/BoundingBox",
5451
"gisnav_msgs/msg/OrthoImage",
5552
"gisnav_msgs/msg/OrthoStereoImage",
56-
"gisnav_msgs/msg/MonocularStereoImage",
57-
"geometry_msgs/msg/PoseWithCovarianceStamped",
5853
"geometry_msgs/msg/PoseWithCovarianceStamped",
5954
"mavros_msgs/msg/GimbalDeviceAttitudeStatus",
6055
"sensor_msgs/msg/NavSatFix",
6156
"geometry_msgs/msg/PoseStamped",
62-
"sensor_msgs/msg/TimeReference",
6357
"rcl_interfaces/msg/Log",
6458
"tf2_msgs/msg/TFMessage",
6559
"tf2_msgs/msg/TFMessage",

0 commit comments

Comments
 (0)