update
This commit is contained in:
@@ -7,7 +7,7 @@ from pathlib import Path
|
||||
import pytest
|
||||
|
||||
from cognitive_agent.application.calibration import protocol
|
||||
from cognitive_agent.application.calibration.service import CalibrationService
|
||||
from cognitive_agent.application.calibration.service import ApiError, CalibrationService
|
||||
|
||||
|
||||
def test_protocol_matches_android_golden_vectors() -> None:
|
||||
@@ -89,3 +89,30 @@ def test_simulation_uses_real_wire_boundary_and_generates_pose() -> None:
|
||||
assert not stopped["controller"]["armed"]
|
||||
finally:
|
||||
service.close()
|
||||
|
||||
|
||||
def test_virtual_session_restart_resets_axes_without_touching_hardware() -> None:
|
||||
with tempfile.TemporaryDirectory() as directory:
|
||||
service = CalibrationService(Path(directory))
|
||||
service.start()
|
||||
try:
|
||||
service.connect_can({"mode": "simulation"})
|
||||
service.move(1, 720)
|
||||
time.sleep(0.15)
|
||||
|
||||
reset = service.reset_virtual_session()
|
||||
|
||||
assert reset["transport"]["mode"] == "simulation"
|
||||
assert reset["transport"]["state"] == "disconnected"
|
||||
assert reset["controller"]["armed"] is False
|
||||
assert [axis["permille"] for axis in reset["axes"]] == [0, 0, 0, 0]
|
||||
assert reset["operation"]["phase"] == protocol.PHASE_IDLE
|
||||
finally:
|
||||
service.close()
|
||||
|
||||
|
||||
def test_virtual_session_restart_rejects_real_bench_state() -> None:
|
||||
with tempfile.TemporaryDirectory() as directory:
|
||||
service = CalibrationService(Path(directory))
|
||||
with pytest.raises(ApiError, match="真实台架会话"):
|
||||
service.reset_virtual_session()
|
||||
|
||||
Reference in New Issue
Block a user