| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- """未结算计划:装货/送货客户名称去重与回退。"""
- from __future__ import annotations
- from app.services.pl.freight_party_customers import (
- resolve_plan_party_customers,
- unique_customer_names,
- )
- def test_unique_customer_names_strips_dedupes_preserves_order():
- assert unique_customer_names([" 甲 ", "乙", "甲", "", None, "丙"]) == ["甲", "乙", "丙"]
- def test_resolve_uses_stop_names_over_legacy():
- load, delivery = resolve_plan_party_customers(
- load_names=["装货A"],
- delivery_names=["送货1", "送货2"],
- fallback_supplier="旧供应商",
- fallback_customer="旧客户",
- fallback_destination="旧目的地",
- )
- assert load == ["装货A"]
- assert delivery == ["送货1", "送货2"]
- def test_resolve_falls_back_when_stops_empty():
- load, delivery = resolve_plan_party_customers(
- load_names=[],
- delivery_names=["", " "],
- fallback_supplier="供应商X",
- fallback_customer="客户Y",
- fallback_destination="目的地Z",
- )
- assert load == ["供应商X"]
- assert delivery == ["客户Y"]
- def test_resolve_delivery_falls_back_to_destination():
- load, delivery = resolve_plan_party_customers(
- load_names=[],
- delivery_names=[],
- fallback_supplier=None,
- fallback_customer=None,
- fallback_destination="目的地Z",
- )
- assert load == []
- assert delivery == ["目的地Z"]
|