mirror of
https://github.com/firestar5683/StarPilot.git
synced 2026-09-15 03:53:58 +08:00
ff12759e80
* move fingerpints * fix circular imports * fix circular imports * fix auto fingerprint * fix those tests * and controlsd * add labeler rule * no defaultdict old-commit-hash: 28eed156e0a62ab993de6d534bb102a6ede222f7
29 lines
963 B
Python
Executable File
29 lines
963 B
Python
Executable File
#!/usr/bin/env python3
|
|
from parameterized import parameterized
|
|
import unittest
|
|
|
|
from openpilot.selfdrive.car.gm.fingerprints import FINGERPRINTS
|
|
from openpilot.selfdrive.car.gm.values import CAMERA_ACC_CAR, CAR, GM_RX_OFFSET
|
|
|
|
CAMERA_DIAGNOSTIC_ADDRESS = 0x24b
|
|
|
|
|
|
class TestGMFingerprint(unittest.TestCase):
|
|
@parameterized.expand(FINGERPRINTS.items())
|
|
def test_can_fingerprints(self, car_model, fingerprints):
|
|
self.assertGreater(len(fingerprints), 0)
|
|
|
|
# Trailblazer is in dashcam
|
|
if car_model != CAR.TRAILBLAZER:
|
|
self.assertTrue(all(len(finger) for finger in fingerprints))
|
|
|
|
# The camera can sometimes be communicating on startup
|
|
if car_model in CAMERA_ACC_CAR - {CAR.TRAILBLAZER}:
|
|
for finger in fingerprints:
|
|
for required_addr in (CAMERA_DIAGNOSTIC_ADDRESS, CAMERA_DIAGNOSTIC_ADDRESS + GM_RX_OFFSET):
|
|
self.assertEqual(finger.get(required_addr), 8, required_addr)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|