|
|
@@ -0,0 +1,44 @@
|
|
|
+from app.services.pl_internal_customer import INTERNAL_CUSTOMER_NAMES
|
|
|
+from app.services.pl_plan_contract_gap import compute_contract_gap_sides
|
|
|
+
|
|
|
+INTERNAL = next(iter(INTERNAL_CUSTOMER_NAMES))
|
|
|
+
|
|
|
+
|
|
|
+def test_both_external_no_contracts_gaps_both():
|
|
|
+ sides = compute_contract_gap_sides(
|
|
|
+ supplier_name="外部供方A",
|
|
|
+ customer_name="外部需方B",
|
|
|
+ supplier_contract_count=0,
|
|
|
+ demander_contract_count=0,
|
|
|
+ )
|
|
|
+ assert sides == ["supplier", "demander"]
|
|
|
+
|
|
|
+
|
|
|
+def test_internal_supplier_external_demander_missing_only_demander():
|
|
|
+ sides = compute_contract_gap_sides(
|
|
|
+ supplier_name=INTERNAL,
|
|
|
+ customer_name="外部需方B",
|
|
|
+ supplier_contract_count=0,
|
|
|
+ demander_contract_count=0,
|
|
|
+ )
|
|
|
+ assert sides == ["demander"]
|
|
|
+
|
|
|
+
|
|
|
+def test_both_internal_no_gap():
|
|
|
+ sides = compute_contract_gap_sides(
|
|
|
+ supplier_name=INTERNAL,
|
|
|
+ customer_name=INTERNAL,
|
|
|
+ supplier_contract_count=0,
|
|
|
+ demander_contract_count=0,
|
|
|
+ )
|
|
|
+ assert sides == []
|
|
|
+
|
|
|
+
|
|
|
+def test_external_with_contracts_no_gap():
|
|
|
+ sides = compute_contract_gap_sides(
|
|
|
+ supplier_name="外部供方A",
|
|
|
+ customer_name="外部需方B",
|
|
|
+ supplier_contract_count=1,
|
|
|
+ demander_contract_count=2,
|
|
|
+ )
|
|
|
+ assert sides == []
|