Esempio n. 1
0
 def test_subscriber_wait_for_message(self):
     """Checks how `WaitForMessage` works without Python threads."""
     lcm = DrakeLcm()
     sub = mut.LcmSubscriberSystem.Make("TEST_LOOP", lcmt_header, lcm)
     value = AbstractValue.Make(lcmt_header())
     for old_message_count in range(3):
         message = lcmt_header()
         message.utime = old_message_count + 1
         lcm.Publish("TEST_LOOP", message.encode())
         for attempt in range(10):
             new_count = sub.WaitForMessage(old_message_count,
                                            value,
                                            timeout=0.02)
             if new_count > old_message_count:
                 break
             lcm.HandleSubscriptions(0)
         self.assertEqual(value.get_value().utime, old_message_count + 1)
Esempio n. 2
0
 def AllocateOutput(self):
     return AbstractValue.Make(lcmt_header())