Exemplo n.º 1
0
 def test_mock_lcm_roundtrip(self):
     dut = DrakeMockLcm()
     self.assertIsInstance(dut, DrakeLcmInterface)
     dut.Subscribe(channel="TEST_CHANNEL", handler=self._handler)
     dut.Publish(channel="TEST_CHANNEL", buffer=self.quat.encode())
     self.assertEqual(self.count, 0)
     dut.HandleSubscriptions(0)
     self.assertEqual(self.count, 1)
Exemplo n.º 2
0
 def test_subscriber(self):
     lcm = DrakeMockLcm()
     dut = mut.LcmSubscriberSystem.Make(channel="TEST_CHANNEL",
                                        lcm_type=quaternion_t,
                                        lcm=lcm)
     model_message = self._model_message()
     lcm.Publish(channel="TEST_CHANNEL", buffer=model_message.encode())
     lcm.HandleSubscriptions(0)
     actual_message = self._calc_output(dut).get_value()
     self.assert_lcm_equal(actual_message, model_message)
Exemplo n.º 3
0
 def test_subscriber(self):
     lcm = DrakeMockLcm()
     dut = mut.LcmSubscriberSystem.Make(
         channel="TEST_CHANNEL", lcm_type=quaternion_t, lcm=lcm)
     model_message = self._model_message()
     lcm.Publish(channel="TEST_CHANNEL", buffer=model_message.encode())
     lcm.HandleSubscriptions(0)
     context = self._process_event(dut)
     actual_message = dut.get_output_port(0).Eval(context)
     self.assert_lcm_equal(actual_message, model_message)
Exemplo n.º 4
0
 def test_subscriber(self):
     mock = DrakeMockLcm()
     dut = Subscriber(lcm=mock, channel="CHANNEL", lcm_type=quaternion_t)
     mock.Publish(channel="CHANNEL", buffer=self.quat.encode())
     self.assertEqual(dut.count, 0)
     self.assertEqual(len(dut.raw), 0)
     self.assertEqual(dut.message.w, 0)
     self.assertEqual(dut.message.x, 0)
     self.assertEqual(dut.message.y, 0)
     self.assertEqual(dut.message.z, 0)
     mock.HandleSubscriptions(0)
     self.assertEqual(dut.count, 1)
     self.assertEqual(dut.raw, self.quat.encode())
     self.assertEqual(dut.message.w, self.quat.w)
     self.assertEqual(dut.message.x, self.quat.x)
     self.assertEqual(dut.message.y, self.quat.y)
     self.assertEqual(dut.message.z, self.quat.z)
Exemplo n.º 5
0
 def test_mock_lcm_get_last_published_message_deprecated(self):
     dut = DrakeMockLcm()
     dut.Publish(channel="TEST_CHANNEL", buffer=self.quat.encode())
     with catch_drake_warnings(expected_count=1):
         raw = dut.get_last_published_message("TEST_CHANNEL")
         self.assertEqual(raw, self.quat.encode())
Exemplo n.º 6
0
 def test_mock_lcm_get_last_published_message(self):
     dut = DrakeMockLcm()
     dut.Publish(channel="TEST_CHANNEL", buffer=self.quat.encode())
     raw = dut.get_last_published_message("TEST_CHANNEL")
     self.assertEqual(raw, self.quat.encode())