Files
shanxia2.0/backend/tests/test_crm_product_read_contract.py
T
2026-10-19 18:28:02 +08:00

25 lines
739 B
Python

"""CRM 产品读模型契约测试。"""
from __future__ import annotations
from app.crud.crm.product import _product_row_to_dict
from app.models.crm_models import CrmProduct
from app.schemas.crm.product import ProductCreateBody, ProductUpdateBody
def test_product_read_contract_exposes_creator_for_delete_permission():
row = CrmProduct(
id="product-1",
product_no="CP-001",
product_name="工业甲醇",
create_by="user-1",
)
payload = _product_row_to_dict(row)
assert payload["createBy"] == "user-1"
def test_product_creator_stays_read_only_in_write_schemas():
assert "create_by" not in ProductCreateBody.model_fields
assert "create_by" not in ProductUpdateBody.model_fields