From 1e3df07775c2f94e07fc8fd8f63b89827d07dac6 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Mon, 31 Oct 2022 23:02:31 -0700 Subject: [PATCH] test_models: fix Nidec routes that start enabled (#26305) * Update test_models.py * Update test_models.py * fix non-pcmCruise routes where button is left pressed in warmup * more explicit, don't allow multiple continues * revert chjange * -that old-commit-hash: 0e162cc13b31e136f8a53c0af20dd71c2f84bed7 --- selfdrive/car/tests/test_models.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/selfdrive/car/tests/test_models.py b/selfdrive/car/tests/test_models.py index b665fbe9c7..ee25b8205f 100755 --- a/selfdrive/car/tests/test_models.py +++ b/selfdrive/car/tests/test_models.py @@ -219,13 +219,10 @@ class TestCarModelBase(unittest.TestCase): to_send = package_can_msg(msg) self.safety.safety_rx_hook(to_send) - if not self.CP.pcmCruise: - self.safety.set_controls_allowed(0) - controls_allowed_prev = False CS_prev = car.CarState.new_message() checks = defaultdict(lambda: 0) - for can in self.can_msgs: + for idx, can in enumerate(self.can_msgs): CS = self.CI.update(CC, (can.as_builder().to_bytes(), )) for msg in can_capnp_to_can_list(can.can, src_filter=range(64)): msg = list(msg) @@ -234,6 +231,14 @@ class TestCarModelBase(unittest.TestCase): ret = self.safety.safety_rx_hook(to_send) self.assertEqual(1, ret, f"safety rx failed ({ret=}): {to_send}") + # Skip first frame so CS_prev is properly initialized + if idx == 0: + CS_prev = CS + # Button may be left pressed in warm up period + if not self.CP.pcmCruise: + self.safety.set_controls_allowed(0) + continue + # TODO: check rest of panda's carstate (steering, ACC main on, etc.) checks['gasPressed'] += CS.gasPressed != self.safety.get_gas_pressed_prev()