优化
This commit is contained in:
@@ -24,7 +24,7 @@ class ModeProfileRegistryTests(unittest.TestCase):
|
||||
self.assertEqual(requests[0]["capability"], "seat.set_longitudinal_position")
|
||||
self.assertEqual(requests[0]["target_scope"], "passenger")
|
||||
self.assertIn(
|
||||
{"name": "position_pct", "value": 0},
|
||||
{"name": "position_pct", "value": 100},
|
||||
requests[0]["parameters"],
|
||||
)
|
||||
by_capability = {request["capability"]: request for request in requests}
|
||||
@@ -88,6 +88,47 @@ class ModeProfileRegistryTests(unittest.TestCase):
|
||||
"calf_decompression_float",
|
||||
)
|
||||
|
||||
def test_denza_mode_positions_use_corrected_n7_zero_points(self) -> None:
|
||||
registry = ModeProfileRegistry(REPOSITORY_ROOT / "config" / "modes")
|
||||
expected_positions = {
|
||||
"baby_nap": (81, 30),
|
||||
"calf_decompression_float": (51, 75),
|
||||
"cruise_sofa": (51, 30),
|
||||
"easy_entry_exit": (100, 0),
|
||||
"electric_beach_chair": (100, 0),
|
||||
"leisure_lounger": (51, 30),
|
||||
"meditation_space": (100, 44),
|
||||
"nap": (0, 0),
|
||||
"office": (72, 22),
|
||||
"queen_passenger_driving": (72, 38),
|
||||
"zero_gravity": (100, 100),
|
||||
}
|
||||
|
||||
profiles = {
|
||||
profile.id: profile
|
||||
for profile in registry.profiles()
|
||||
if profile.id in expected_positions and profile.vehicle_ids == ("denza_n7",)
|
||||
}
|
||||
actual_positions = {}
|
||||
for profile_id, profile in profiles.items():
|
||||
requests = {
|
||||
request["capability"]: request
|
||||
for request in registry.requests_for_profiles([profile])
|
||||
}
|
||||
actual_positions[profile_id] = tuple(
|
||||
next(
|
||||
parameter["value"]
|
||||
for parameter in requests[capability]["parameters"]
|
||||
if parameter["name"] == "position_pct"
|
||||
)
|
||||
for capability in (
|
||||
"seat.set_longitudinal_position",
|
||||
"seat.set_cushion_tilt",
|
||||
)
|
||||
)
|
||||
|
||||
self.assertEqual(actual_positions, expected_positions)
|
||||
|
||||
def test_common_modes_are_visible_with_vehicle_specific_overrides(self) -> None:
|
||||
with tempfile.TemporaryDirectory() as directory:
|
||||
root = Path(directory)
|
||||
|
||||
@@ -26,7 +26,10 @@ class VehicleProfileTests(unittest.TestCase):
|
||||
})
|
||||
self.assertEqual(profile.seat_motors["longitudinal"].range, 215)
|
||||
self.assertEqual(profile.seat_motors["longitudinal"].hall_total_pulses, 480)
|
||||
self.assertEqual(profile.seat_motors["longitudinal"].reference_zero, "rearmost")
|
||||
self.assertEqual(profile.seat_motors["longitudinal"].reference_zero, "forwardmost")
|
||||
self.assertEqual(profile.seat_motors["longitudinal"].positive_direction, "backward")
|
||||
self.assertEqual(profile.seat_motors["cushion_tilt"].reference_zero, "highest")
|
||||
self.assertEqual(profile.seat_motors["cushion_tilt"].positive_direction, "down")
|
||||
self.assertEqual(profile.seat_motors["backrest_recline"].range, 68)
|
||||
self.assertEqual(profile.seat_motors["backrest_recline"].hall_total_pulses, 917)
|
||||
self.assertEqual(profile.seat_motors["legrest_height"].range, 78)
|
||||
|
||||
Reference in New Issue
Block a user