| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- import unittest
- from step2_analysis.analyzer import complete_project_fields
- class Step2ProjectFieldTests(unittest.TestCase):
- def test_markdown_summary_is_normalized_to_fillable_project_fields(self):
- source = """## 项目要求
- ### 服务范围与内容
- 服务范围包括:
- - 建筑物管理
- - 设施设备管理
- - 保洁服务
- ### 服务标准
- - 按采购需求规定的质量标准执行
- - 接受采购人日常考核
- - **服务期限**:自合同签订之日起三年,分三个年度签订合同
- """
- fields = complete_project_fields({}, source)
- self.assertEqual(
- fields["服务内容"],
- "建筑物管理、设施设备管理、保洁服务",
- )
- self.assertIn("质量标准", fields["服务要求"])
- self.assertIn("日常考核", fields["服务要求"])
- self.assertEqual(
- fields["服务期限"],
- "自合同签订之日起三年,分三个年度签订合同",
- )
- def test_llm_extracted_values_take_precedence_over_summary_fallback(self):
- fields = complete_project_fields(
- {
- "服务内容": "经核验的服务内容",
- "服务要求": "经核验的服务要求",
- "服务期限": "经核验的服务期限",
- },
- "服务期限:摘要中的旧值",
- )
- self.assertEqual(fields["服务内容"], "经核验的服务内容")
- self.assertEqual(fields["服务要求"], "经核验的服务要求")
- self.assertEqual(fields["服务期限"], "经核验的服务期限")
- if __name__ == "__main__":
- unittest.main()
|