| 1234567891011121314151617181920212223242526272829 |
- """运输计划解析司机:车辆未关联司机时允许为空。"""
- from __future__ import annotations
- from unittest.mock import MagicMock
- from app.services.pl_plan_service import _resolve_driver
- def test_resolve_driver_without_vehicle_link_returns_none():
- """未显式选司机、车辆也无关联司机时,应返回空三元组而非 400。"""
- db = MagicMock()
- db.query.return_value.filter.return_value.order_by.return_value.first.return_value = None
- result = _resolve_driver(db, "tenant-1", "vehicle-1", None)
- assert result == (None, None, None)
- def test_resolve_driver_with_explicit_id_returns_personnel():
- db = MagicMock()
- personnel = MagicMock()
- personnel.id = "driver-1"
- personnel.personnel_name = "张三"
- personnel.phone_no = "13800000000"
- db.query.return_value.filter.return_value.first.return_value = personnel
- result = _resolve_driver(db, "tenant-1", "vehicle-1", "driver-1")
- assert result == ("driver-1", "张三", "13800000000")
|