import { describe, expect, it } from "vitest"; import { hasFlockRegistrationOverride, resolveFlockQuoteAccount, } from "@/lib/flock/resolve-account"; import type { FlockQuoteInput } from "@/workers/rpa/flock/types"; function baseInput( registration?: FlockQuoteInput["registration"], ): FlockQuoteInput { return { pickupDate: "07/14/2026", pickupZip: "90001", deliveryZip: "75201", palletCount: 6, totalWeightLb: 3500, lengthIn: 48, widthIn: 40, heightIn: 48, registration, }; } describe("hasFlockRegistrationOverride", () => { it("空对象视为未填写", () => { expect(hasFlockRegistrationOverride({})).toBe(false); expect(hasFlockRegistrationOverride(undefined)).toBe(false); }); it("任一字段有值即为自填", () => { expect(hasFlockRegistrationOverride({ email: "a@b.com" })).toBe(true); }); }); describe("resolveFlockQuoteAccount", () => { it("用户邮箱覆盖系统随机", () => { const account = resolveFlockQuoteAccount( baseInput({ email: "user@example.com", phone: "7536407420" }), ); expect(account.email).toBe("user@example.com"); expect(account.phone).toBe("7536407420"); expect(account.firstName.length).toBeGreaterThan(0); }); });