test_pl_plan_column_facet_context.py 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. """运输计划列头 facet 上下文剥离单测。"""
  2. from app.services.pl.plan_column_facet_context import strip_plan_facet_self_params
  3. def test_strip_carrier_keeps_load_customers():
  4. params = {
  5. "field": "carrierName",
  6. "limit": 500,
  7. "carrierNameIn": "甲,乙",
  8. "loadCustomersIn": "客户A",
  9. "transportStatus": "arranged",
  10. }
  11. out = strip_plan_facet_self_params(params, "carrierName")
  12. assert "carrierNameIn" not in out
  13. assert out["loadCustomersIn"] == "客户A"
  14. assert out["transportStatus"] == "arranged"
  15. assert "field" not in out
  16. assert "limit" not in out
  17. def test_strip_load_customer_aliases():
  18. params = {
  19. "loadCustomersIn": "A",
  20. "loadCustomers": '["A"]',
  21. "stopCustomers": '["A"]',
  22. "deliveryCustomersIn": "B",
  23. "carrierNameIn": "甲",
  24. }
  25. out = strip_plan_facet_self_params(params, "loadCustomer")
  26. assert "loadCustomersIn" not in out
  27. assert "stopCustomers" not in out
  28. assert out["deliveryCustomersIn"] == "B"
  29. assert out["carrierNameIn"] == "甲"
  30. def test_strip_load_customers_field_alias():
  31. params = {"loadCustomersIn": "A", "carrierNameIn": "甲"}
  32. out = strip_plan_facet_self_params(params, "loadCustomers")
  33. assert "loadCustomersIn" not in out
  34. assert out["carrierNameIn"] == "甲"
  35. def test_strip_does_not_mutate_input():
  36. params = {"carrierNameIn": "甲", "loadCustomersIn": "A"}
  37. strip_plan_facet_self_params(params, "carrierName")
  38. assert params["carrierNameIn"] == "甲"