def test_event_api(self): # TriggerType - existence check. TriggerType.kUnknown TriggerType.kInitialization TriggerType.kForced TriggerType.kTimed TriggerType.kPeriodic TriggerType.kPerStep TriggerType.kWitness # PublishEvent. # TODO(eric.cousineau): Test other event types when it is useful to # expose them. def callback(context, event): pass event = PublishEvent(callback=callback) self.assertIsInstance(event, Event) event = PublishEvent(trigger_type=TriggerType.kInitialization, callback=callback) self.assertIsInstance(event, Event) self.assertEqual(event.get_trigger_type(), TriggerType.kInitialization) def system_callback(system, context, event): pass event = PublishEvent(system_callback=system_callback) self.assertIsInstance(event, Event) event = PublishEvent(trigger_type=TriggerType.kInitialization, system_callback=system_callback) self.assertIsInstance(event, Event) self.assertEqual(event.get_trigger_type(), TriggerType.kInitialization) # Simple discrete-time system. system1 = LinearSystem(A=[1], B=[1], C=[1], D=[1], time_period=0.1) periodic_data = system1.GetUniquePeriodicDiscreteUpdateAttribute() self.assertIsInstance(periodic_data, PeriodicEventData) self.assertIsInstance(periodic_data.Clone(), PeriodicEventData) periodic_data.period_sec() periodic_data.offset_sec() is_diff_eq, period = system1.IsDifferenceEquationSystem() self.assertTrue(is_diff_eq) self.assertEqual(period, periodic_data.period_sec()) # Simple continuous-time system. system2 = LinearSystem(A=[1], B=[1], C=[1], D=[1], time_period=0.0) periodic_data = system2.GetUniquePeriodicDiscreteUpdateAttribute() self.assertIsNone(periodic_data) is_diff_eq, period = system2.IsDifferenceEquationSystem() self.assertFalse(is_diff_eq)
def test_event_api(self): # TriggerType - existence check. TriggerType.kUnknown TriggerType.kInitialization TriggerType.kForced TriggerType.kTimed TriggerType.kPeriodic TriggerType.kPerStep TriggerType.kWitness # PublishEvent. # TODO(eric.cousineau): Test other event types when it is useful to # expose them. def callback(context, event): pass event = PublishEvent( trigger_type=TriggerType.kInitialization, callback=callback) self.assertIsInstance(event, Event) self.assertEqual(event.get_trigger_type(), TriggerType.kInitialization) # Simple discrete-time system. system1 = LinearSystem(A=[1], B=[1], C=[1], D=[1], time_period=0.1) periodic_data = system1.GetUniquePeriodicDiscreteUpdateAttribute() self.assertIsInstance(periodic_data, PeriodicEventData) self.assertIsInstance(periodic_data.Clone(), PeriodicEventData) periodic_data.period_sec() periodic_data.offset_sec() # Simple continuous-time system. system2 = LinearSystem(A=[1], B=[1], C=[1], D=[1], time_period=0.0) periodic_data = system2.GetUniquePeriodicDiscreteUpdateAttribute() self.assertIsNone(periodic_data)
def test_event_api(self): # TriggerType - existence check. TriggerType.kUnknown TriggerType.kInitialization TriggerType.kForced TriggerType.kTimed TriggerType.kPeriodic TriggerType.kPerStep TriggerType.kWitness # PublishEvent. # TODO(eric.cousineau): Test other event types when it is useful to # expose them. def callback(context, event): pass event = PublishEvent( trigger_type=TriggerType.kInitialization, callback=callback) self.assertIsInstance(event, Event) self.assertEqual(event.get_trigger_type(), TriggerType.kInitialization)
def test_event_api(self): # TriggerType - existence check. TriggerType.kUnknown TriggerType.kInitialization TriggerType.kForced TriggerType.kTimed TriggerType.kPeriodic TriggerType.kPerStep TriggerType.kWitness # PublishEvent. # TODO(eric.cousineau): Test other event types when it is useful to # expose them. def callback(context, event): pass event = PublishEvent( trigger_type=TriggerType.kInitialization, callback=callback) self.assertIsInstance(event, Event) self.assertEqual(event.get_trigger_type(), TriggerType.kInitialization)