feat: integrate cabin CAN and verified dynamic seat modes
This commit is contained in:
@@ -32,6 +32,41 @@ class SeatServiceIntegrationTests(unittest.TestCase):
|
||||
for event in result["trace_events"]:
|
||||
self.assertEqual(self.service.contracts.validate(event), [])
|
||||
|
||||
def test_dynamic_mode_runs_until_explicit_natural_language_stop(self) -> None:
|
||||
conversation_id = "conv-dynamic-stop"
|
||||
started = self.service.process(
|
||||
"\u5f00\u542f\u52a8\u6001\u6447\u7bee\u6a21\u5f0f",
|
||||
provider="local",
|
||||
conversation_id=conversation_id,
|
||||
vehicle_id="denza_n7",
|
||||
)
|
||||
stopped = self.service.process(
|
||||
"\u5173\u95ed\u52a8\u6001\u6447\u7bee\u6a21\u5f0f",
|
||||
provider="local",
|
||||
conversation_id=conversation_id,
|
||||
vehicle_id="denza_n7",
|
||||
)
|
||||
|
||||
self.assertEqual(started["status"], "succeeded")
|
||||
self.assertEqual(
|
||||
started["actuator_state"]["passenger"]["dynamic_mode"],
|
||||
{
|
||||
"mode_id": 2,
|
||||
"name": "\u52a8\u6001\u6447\u7bee\u6a21\u5f0f",
|
||||
"state": "running",
|
||||
"repeat": "until_stopped_or_timeout",
|
||||
"max_runtime_ms": 600_000,
|
||||
},
|
||||
)
|
||||
self.assertEqual(stopped["status"], "succeeded")
|
||||
operation = stopped["function_config"]["spec"]["operations"][0]
|
||||
self.assertEqual(operation["capability"], "seat.stop_dynamic_mode")
|
||||
self.assertEqual(operation["parameters"], {})
|
||||
self.assertEqual(
|
||||
stopped["actuator_state"]["passenger"]["dynamic_mode"]["state"],
|
||||
"idle",
|
||||
)
|
||||
|
||||
def test_gear_request_is_preserved_and_simulated(self) -> None:
|
||||
result = self.service.process("副驾座椅加热开到三档", provider="local")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user