"""实验室样本处理台账:时间格式与字段合并。""" from __future__ import annotations import unittest from datetime import datetime from app.services.lab_sample_process import ( format_cn_datetime, infectious_label, merge_row, ) class LabSampleProcessServiceTests(unittest.TestCase): def test_format_cn_datetime(self): self.assertEqual( format_cn_datetime(datetime(2026, 11, 12, 0, 0, 0)), "2026年11月12日 00时00分00秒", ) self.assertEqual( format_cn_datetime("2026-11-12 08:30:01"), "2026年11月12日 08时30分01秒", ) self.assertEqual(format_cn_datetime(""), "") def test_infectious_label(self): self.assertEqual(infectious_label("zc"), "正常") self.assertEqual(infectious_label("bzc"), "不正常") def test_merge_row_system_first_and_override(self): merged = merge_row( tab_key="donation_hsc", system_values={"receiveCheckText": "系统汇总", "motherName": "张三"}, supplement={"receiveCheckText": "补录文案", "labMaterialCode": "M001"}, ) self.assertEqual(merged["receiveCheckText"], "补录文案") self.assertEqual(merged["labMaterialCode"], "M001") self.assertEqual(merged["motherName"], "张三") if __name__ == "__main__": unittest.main()