from app.crud.crm.contract import _validate_contract_product_package_specs def test_validate_allows_same_product_same_package_on_two_lines(): products = [ {"productId": "p1", "packageSpecs": ["槽罐车"], "price": 800, "quantity": 50}, {"productId": "p1", "packageSpecs": ["槽罐车"], "price": 850, "quantity": 40}, ] _validate_contract_product_package_specs(products) def test_validate_still_requires_package_spec(): import pytest with pytest.raises(ValueError, match="包装规格不能为空"): _validate_contract_product_package_specs( [{"productId": "p1", "packageSpecs": [], "packageSpec": ""}] )