From e43caaa54d8dd493c6114b3c7bcf0154c1845eb2 Mon Sep 17 00:00:00 2001 From: Kei Okada Date: Sat, 17 Jul 2021 23:53:40 +0900 Subject: [PATCH 1/2] add test_common_logger.test test_common_logger.py --- .../jsk_robot_startup/CMakeLists.txt | 1 + .../lifelog/test/test_common_logger.py | 74 +++++++++++++++++++ .../lifelog/test/test_common_logger.test | 19 +++++ 3 files changed, 94 insertions(+) create mode 100755 jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.py create mode 100644 jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.test diff --git a/jsk_robot_common/jsk_robot_startup/CMakeLists.txt b/jsk_robot_common/jsk_robot_startup/CMakeLists.txt index 90492f12d5..b89c83806d 100644 --- a/jsk_robot_common/jsk_robot_startup/CMakeLists.txt +++ b/jsk_robot_common/jsk_robot_startup/CMakeLists.txt @@ -110,4 +110,5 @@ if(CATKIN_ENABLE_TESTING) # Disabled since cannot set environment variables for rostest for now. # see https://github.com/PR2/pr2_simulator/pull/126 # add_rostest(lifelog/test/logger_pr2.test) + add_rostest(lifelog/test/test_common_logger.test) endif() diff --git a/jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.py b/jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.py new file mode 100755 index 0000000000..85a2c6df76 --- /dev/null +++ b/jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.py @@ -0,0 +1,74 @@ +#!/usr/bin/env python +############################################################################### +# Software License Agreement (BSD License) +# +# Copyright (c) 2021, Kei OKada +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following +# disclaimer in the documentation and/or other materials provided +# with the distribution. +# * Neither the name of Willow Garage, Inc. nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +############################################################################### + +import sys +import time +import unittest + +import rospy + +from rosgraph_msgs.msg import Log + +PKG = 'jsk_robot_startup' +NAME = 'test_common_logger' + +class RosoutTest(unittest.TestCase): + def __init__(self, *args): + super(self.__class__, self).__init__(*args) + rospy.init_node(NAME) + self.timeout = rospy.get_param('~timeout', 30) + + self.base_trajectory_logger = False + self.sub = rospy.Subscriber('rosout', Log, self._callback) + + def _callback(self, msg): + if msg.name == "/lifelog/base_trajectory_logger": + self.base_trajectory_logger = True + + def test_publish(self): + t_start = time.time() + while not rospy.is_shutdown(): + if time.time() - t_start > self.timeout: + self.fail('Timed out'); + + if self.base_trajectory_logger: + assert True, "base_trajectory_logger is started" + break + rospy.sleep(0.01) + +if __name__ == '__main__': + import rostest + rostest.run(PKG, NAME, RosoutTest, sys.argv) + diff --git a/jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.test b/jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.test new file mode 100644 index 0000000000..938cd86992 --- /dev/null +++ b/jsk_robot_common/jsk_robot_startup/lifelog/test/test_common_logger.test @@ -0,0 +1,19 @@ + + + + + + /robot/name: pr1012 + /amcl/global_frame_id: map + /amcl/base_frame_id: base_link + + + + + + + From 0c79ce93ce4ed3a6380ad4820c1546ad207770be Mon Sep 17 00:00:00 2001 From: Kei Okada Date: Sat, 17 Jul 2021 22:59:30 +0900 Subject: [PATCH 2/2] chmod a-x jsk_robot_startup/src/jsk_robot_startup/OdometryFeedbackWrapper.py and jsk_robot_startup/src/jsk_robot_startup/lifelog/base_trajectory_logger.py --- .../src/jsk_robot_startup/OdometryFeedbackWrapper.py | 0 .../src/jsk_robot_startup/lifelog/base_trajectory_logger.py | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 jsk_robot_common/jsk_robot_startup/src/jsk_robot_startup/OdometryFeedbackWrapper.py mode change 100755 => 100644 jsk_robot_common/jsk_robot_startup/src/jsk_robot_startup/lifelog/base_trajectory_logger.py diff --git a/jsk_robot_common/jsk_robot_startup/src/jsk_robot_startup/OdometryFeedbackWrapper.py b/jsk_robot_common/jsk_robot_startup/src/jsk_robot_startup/OdometryFeedbackWrapper.py old mode 100755 new mode 100644 diff --git a/jsk_robot_common/jsk_robot_startup/src/jsk_robot_startup/lifelog/base_trajectory_logger.py b/jsk_robot_common/jsk_robot_startup/src/jsk_robot_startup/lifelog/base_trajectory_logger.py old mode 100755 new mode 100644