def translate_term(*, term: Term) -> TermAvro: avro_term = TermAvro() if term.get_start_time() is not None: avro_term.start_time = ActorClock.to_milliseconds(when=term.get_start_time()) else: term.start_time = 0 if term.get_end_time() is not None: avro_term.end_time = ActorClock.to_milliseconds(when=term.get_end_time()) else: term.end_time = 0 if term.get_new_start_time() is not None: avro_term.new_start_time = ActorClock.to_milliseconds(when=term.get_new_start_time()) else: avro_term.new_start_time = 0 return avro_term
def check(self, *, term: Term, start: int = None, new_start: int = None, end: int = None): if start is not None and new_start is not None and end is not None: self.assertIsNotNone(term.start_time) self.assertIsNotNone(term.new_start_time) self.assertIsNotNone(term.end_time) self.assertIsNotNone(term.get_start_time()) self.assertIsNotNone(term.get_new_start_time()) self.assertIsNotNone(term.get_end_time()) self.assertEqual(start, ActorClock.to_milliseconds(when=term.get_start_time())) self.assertEqual(new_start, ActorClock.to_milliseconds(when=term.get_new_start_time())) self.assertEqual(end, ActorClock.to_milliseconds(when=term.get_end_time())) else: self.assertIsNone(term.start_time) self.assertIsNone(term.new_start_time) self.assertIsNone(term.end_time) self.assertIsNone(term.get_start_time()) self.assertIsNone(term.get_new_start_time()) self.assertIsNone(term.get_end_time())