import { describe, expect, it } from "vitest"; import { extractMothershipPortalQuoteMessages, formatMothershipPortalQuoteMessage, } from "@/lib/mothership/portal-quote-messages"; describe("portal-quote-messages", () => { it("合并 No rates + required fields", () => { const body = "Nicotine/Tobacco\nNo rates found\nPlease review all required fields to proceed."; const msgs = extractMothershipPortalQuoteMessages(body); expect(msgs).toContain( "No rates found\nPlease review all required fields to proceed", ); }); it("提取附加服务/住宅取件阻断(中文)", () => { const body = "不支持附加服务,我们的承运合作伙伴不提供住宅地址上门取件服务"; const msgs = extractMothershipPortalQuoteMessages(body); expect(msgs.some((m) => m.includes("不支持附加服务"))).toBe(true); }); it("提取 carrier partner residential pickup(英文)", () => { const body = "Unsupported accessorial. Our carrier partners do not provide residential pickup at this location."; const msgs = extractMothershipPortalQuoteMessages(body); expect( msgs.some((m) => /carrier partners? do not provide/i.test(m), ), ).toBe(true); }); it("format 将英文官网提示译为中文", () => { const out = formatMothershipPortalQuoteMessage([ "No rates found", "Unsupported accessorial", ]); expect(out).toBe("未找到可用报价\n\n不支持该附加服务"); }); it("format 保留中文官网提示", () => { const out = formatMothershipPortalQuoteMessage([ "不支持附加服务,承运合作伙伴不提供住宅地址上门取件", ]); expect(out).toContain("不支持附加服务"); }); });