机器人显示名与站点标题可配;多段联运列表投影;协同群监听对账;工单附件落存;模板与工单后台补强
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -174,6 +174,43 @@ class AirAddedServicesTests(unittest.TestCase):
|
||||
self.assertTrue(assemble_air_query(bare)["ok"])
|
||||
self.assertNotIn("added_services", assemble_air_query(bare)["facts"])
|
||||
|
||||
def test_empty_trade_terms_does_not_swallow_added_services(self) -> None:
|
||||
"""
|
||||
空运补问复制清单:贸易条款留空时,不能把「10.增值服务」收成贸易条款。
|
||||
|
||||
测服复现:核对卡出现「贸易条款(非必填):10.增值服务」。
|
||||
"""
|
||||
multi = (
|
||||
"1.起运地(必填):南京\n"
|
||||
"2.目的地(必填):吉隆坡\n"
|
||||
"3.品名(必填):普货\n"
|
||||
"4.件数(必填):10\n"
|
||||
"5.重量(KG)(必填):21\n"
|
||||
"6.体积(CBM)(必填):1.1*1.2*1.3\n"
|
||||
"7.包装类型(必填):散货\n"
|
||||
"8.贸易条款(非必填):\n"
|
||||
"9.增值服务(非必填):卡转低消、前置仓\n"
|
||||
"10.报价日期(非必填):"
|
||||
)
|
||||
same_line = (
|
||||
"1.起运地(必填):南京\n"
|
||||
"2.目的地(必填):吉隆坡\n"
|
||||
"3.品名(必填):普货\n"
|
||||
"4.件数(必填):10\n"
|
||||
"5.重量(KG)(必填):2\n"
|
||||
"6.体积(CBM)(必填):1.2*1.3*1.5\n"
|
||||
"7.包装类型(必填):散货\n"
|
||||
"8.贸易条款(非必填):9.增值服务(非必填):卡转低消、前置仓\n"
|
||||
"10.报价日期(非必填):"
|
||||
)
|
||||
for text in (multi, same_line):
|
||||
snap = extract_inquiry_snapshot(text, injected_mode="AIR")
|
||||
facts = snap["facts"]
|
||||
trade = str(facts.get("贸易条款") or "")
|
||||
self.assertFalse(trade, msg=repr(trade))
|
||||
self.assertNotIn("增值服务", trade)
|
||||
self.assertEqual(facts.get("added_services"), "卡转低消、前置仓")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
Reference in New Issue
Block a user