You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
1.6 KiB
47 lines
1.6 KiB
import chryslercan
|
|
from values import CAR
|
|
from selfdrive.can.packer import CANPacker
|
|
|
|
from cereal import car
|
|
VisualAlert = car.CarControl.HUDControl.VisualAlert
|
|
AudibleAlert = car.CarControl.HUDControl.AudibleAlert
|
|
|
|
import unittest
|
|
|
|
|
|
class TestChryslerCan(unittest.TestCase):
|
|
|
|
def test_checksum(self):
|
|
self.assertEqual(0x75, chryslercan.calc_checksum([0x01, 0x20]))
|
|
self.assertEqual(0xcc, chryslercan.calc_checksum([0x14, 0, 0, 0, 0x20]))
|
|
|
|
def test_heartbit(self):
|
|
self.assertEqual(
|
|
[0x2d9, 0, '0000000820'.decode('hex'), 0],
|
|
chryslercan.create_lkas_heartbit(CAR.PACIFICA_2017_HYBRID))
|
|
|
|
def test_hud(self):
|
|
packer = CANPacker('chrysler_pacifica_2017_hybrid')
|
|
self.assertEqual(
|
|
[0x2a6, 0, '0000010100000000'.decode('hex'), 0],
|
|
chryslercan.create_lkas_hud(packer,
|
|
'park', False, False, CAR.PACIFICA_2017_HYBRID, 1))
|
|
self.assertEqual(
|
|
[0x2a6, 0, '0000010000000000'.decode('hex'), 0],
|
|
chryslercan.create_lkas_hud(packer,
|
|
'park', False, False, CAR.PACIFICA_2017_HYBRID, 5*4))
|
|
self.assertEqual(
|
|
[0x2a6, 0, '0000000000000000'.decode('hex'), 0],
|
|
chryslercan.create_lkas_hud(packer,
|
|
'park', False, False, CAR.PACIFICA_2017_HYBRID, 99999))
|
|
self.assertEqual(
|
|
[0x2a6, 0, '0200060000000000'.decode('hex'), 0],
|
|
chryslercan.create_lkas_hud(packer,
|
|
'drive', True, False, CAR.PACIFICA_2017_HYBRID, 99999))
|
|
self.assertEqual(
|
|
[0x2a6, 0, '0264060000000000'.decode('hex'), 0],
|
|
chryslercan.create_lkas_hud(packer,
|
|
'drive', True, False, CAR.PACIFICA_2018, 99999))
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|
|
|