Files
dragonpilot/selfdrive/car/tests/test_docs.py
Shane Smiskol dabcfd266e car info: function that sorts all car info into tiers (#24498)
* base function that returns all car info sorted by make model

* don't need to pass it in quite yet
2022-05-11 15:59:08 -07:00

33 lines
1.1 KiB
Python
Executable File

#!/usr/bin/env python3
import unittest
from selfdrive.car.docs import CARS_MD_OUT, CARS_MD_TEMPLATE, generate_cars_md, get_all_car_info
class TestCarDocs(unittest.TestCase):
def setUp(self):
self.all_cars = get_all_car_info()
def test_generator(self):
generated_cars_md = generate_cars_md(self.all_cars, CARS_MD_TEMPLATE)
with open(CARS_MD_OUT, "r") as f:
current_cars_md = f.read()
self.assertEqual(generated_cars_md, current_cars_md,
"Run selfdrive/car/docs.py to generate new supported cars documentation")
def test_naming_conventions(self):
# Asserts market-standard car naming conventions by make
for car in self.all_cars:
if car.car_name == "hyundai":
tokens = car.model.lower().split(" ")
self.assertNotIn("phev", tokens, "Use `Plug-in Hybrid`")
self.assertNotIn("hev", tokens, "Use `Hybrid`")
self.assertNotIn("ev", tokens, "Use `Electric`")
if "plug-in hybrid" in car.model.lower():
self.assertIn("Plug-in Hybrid", car.model, "Use correct capitalization")
if __name__ == "__main__":
unittest.main()