def test_lookup_transform_core_pass(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=0).to_msg()) buffer_core.set_transform(transform, 'unittest') lookup_transform = buffer_core.lookup_transform_core( target_frame='bar', source_frame='foo', time=rclpy.time.Time()) self.assertEqual(transform, lookup_transform)
def test_set_transform(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time().to_msg()) result = buffer_core.set_transform(transform, 'unittest') self.assertEqual(result, None) result, _ = buffer_core.can_transform_core( target_frame='bar', source_frame='foo', time=rclpy.time.Time(seconds=0.5)) self.assertEqual(result, 0)
def test_get_latest_common_time(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=0).to_msg()) buffer_core.set_transform(transform, 'unittest') transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=1).to_msg()) buffer_core.set_transform(transform, 'unittest') transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=0.5).to_msg()) buffer_core.set_transform(transform, 'unittest') latest_common_time = buffer_core.get_latest_common_time('bar', 'foo') self.assertEqual(latest_common_time, rclpy.time.Time(seconds=1))
def test_all_frames_as_string(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time().to_msg()) buffer_core.set_transform(transform, 'unittest') self.assertTrue(type(buffer_core.all_frames_as_string()) == str) self.assertTrue('foo' in buffer_core.all_frames_as_string()) self.assertTrue('bar' in buffer_core.all_frames_as_string())
def test_clear(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=0).to_msg()) buffer_core.set_transform(transform, 'unittest') result, _ = buffer_core.can_transform_core(target_frame='foo', source_frame='bar', time=rclpy.time.Time()) self.assertTrue(result) buffer_core.clear() result, _ = buffer_core.can_transform_core(target_frame='foo', source_frame='bar', time=rclpy.time.Time()) self.assertFalse(result)
def test_lookup_transform_core_fail(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=0).to_msg()) buffer_core.set_transform(transform, 'unittest') with self.assertRaises(LookupException) as ex: buffer_core.lookup_transform_core(target_frame='bar', source_frame='baz', time=rclpy.time.Time()) self.assertEqual(LookupException, type(ex.exception))
def test_can_transform_full_core(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time().to_msg()) buffer_core.set_transform(transform, 'unittest') transform = build_transform('foo', 'baz', rclpy.time.Time().to_msg()) buffer_core.set_transform(transform, 'unittest') result, error_msg = buffer_core.can_transform_full_core( target_frame='foo', target_time=rclpy.time.Time(), source_frame='baz', source_time=rclpy.time.Time(), fixed_frame='bar') self.assertEqual(result, 1) self.assertEqual(error_msg, '')
def test_can_transform_core_pass(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time().to_msg()) buffer_core.set_transform(transform, 'unittest') transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=1).to_msg()) buffer_core.set_transform(transform, 'unittest') result, error_msg = buffer_core.can_transform_core( target_frame='foo', source_frame='bar', time=rclpy.time.Time(seconds=0.5)) self.assertEqual(result, 1) self.assertEqual(error_msg, '')
def test_can_transform_core_fail(self): buffer_core = BufferCore() transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=1).to_msg()) buffer_core.set_transform(transform, 'unittest') transform = build_transform('bar', 'foo', rclpy.time.Time(seconds=2).to_msg()) buffer_core.set_transform(transform, 'unittest') result, error_msg = buffer_core.can_transform_core( target_frame='foo', source_frame='bar', time=rclpy.time.Time(seconds=2.5)) self.assertEqual(result, 0) self.assertIn('extrapolation into the future', error_msg) result, error_msg = buffer_core.can_transform_core( target_frame='foo', source_frame='bar', time=rclpy.time.Time(seconds=0.5)) self.assertEqual(result, 0) self.assertIn('extrapolation into the past', error_msg)