mirror of
https://github.com/infiniteCable2/opendbc.git
synced 2026-06-08 10:54:51 +08:00
* move can ignition to opendbc * more tests * init counters for deterministic test * Revert "init counters for deterministic test" This reverts commit d2abb4a9a6c3fde3bc4f4c4a396f62f4fab42de1. * rm * use getter/setter * clean tests * fix test * add loop * split into brand tests * add vw meb can ignition * smol * bump
41 lines
1.3 KiB
Python
41 lines
1.3 KiB
Python
#!/usr/bin/env python3
|
|
import unittest
|
|
|
|
from opendbc.safety.tests.libsafety import libsafety_py
|
|
from opendbc.safety.tests.common import CANPackerSafety
|
|
|
|
|
|
class TestVolkswagenMebIgnition(unittest.TestCase):
|
|
TX_MSGS: list = []
|
|
|
|
def setUp(self):
|
|
self.safety = libsafety_py.libsafety
|
|
self.safety.init_tests()
|
|
self.packer = CANPackerSafety("vw_meb")
|
|
|
|
def _msg(self, counter, ign):
|
|
return self.packer.make_can_msg_safety("Klemmen_Status_01", 0,
|
|
{"Klemmen_Status_01_BZ": counter,
|
|
"ZAS_Kl_15": ign})
|
|
|
|
# ZAS_Kl_15=1
|
|
def test_ignition_on(self):
|
|
for i in range(16):
|
|
self.safety.init_tests()
|
|
self.safety.ignition_can_hook(self._msg(i, 1))
|
|
self.assertFalse(self.safety.get_ignition_can())
|
|
self.safety.ignition_can_hook(self._msg((i + 1) % 16, 1))
|
|
self.assertTrue(self.safety.get_ignition_can())
|
|
|
|
def test_ignition_off(self):
|
|
self.safety.ignition_can_hook(self._msg(0, 1))
|
|
self.safety.ignition_can_hook(self._msg(1, 1))
|
|
self.assertTrue(self.safety.get_ignition_can())
|
|
self.safety.ignition_can_hook(self._msg(2, 0))
|
|
self.safety.ignition_can_hook(self._msg(3, 0))
|
|
self.assertFalse(self.safety.get_ignition_can())
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|