From c32368fd2090f5ec4f03a6c93d79a1418a9cc1c0 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Wed, 5 Oct 2022 17:09:46 -0700 Subject: [PATCH] Car docs: test no duplicate years (#25975) * unit test * clean up * revert test * clean up * like this like this * no model model old-commit-hash: 6db9f051f761506e4d91ef1879cfae4c8cb1ddc8 --- selfdrive/car/tests/test_docs.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/selfdrive/car/tests/test_docs.py b/selfdrive/car/tests/test_docs.py index 191b36b8f2..b7056df5b3 100755 --- a/selfdrive/car/tests/test_docs.py +++ b/selfdrive/car/tests/test_docs.py @@ -1,4 +1,5 @@ #!/usr/bin/env python3 +from collections import defaultdict import re import unittest @@ -20,6 +21,15 @@ class TestCarDocs(unittest.TestCase): self.assertEqual(generated_cars_md, current_cars_md, "Run selfdrive/car/docs.py to update the compatibility documentation") + def test_duplicate_years(self): + make_model_years = defaultdict(list) + for car in self.all_cars: + with self.subTest(car_info_name=car.name): + make_model = (car.make, car.model) + for year in car.year_list: + self.assertNotIn(year, make_model_years[make_model], f"{car.name}: Duplicate model year") + make_model_years[make_model].append(year) + def test_missing_car_info(self): all_car_info_platforms = get_interface_attr("CAR_INFO", combine_brands=True).keys() for platform in sorted(interfaces.keys()):