import type { PublicOrganizationRecord } from "@umt/contracts"; import { createElement } from "react"; import { renderToStaticMarkup } from "react-dom/server"; import { expect, it } from "vitest"; import { MemoryRouter } from "~/lib/router-compat.tsx"; import { DownloadOrganizeIssue } from "./download-detail.tsx"; const render = (status: PublicOrganizationRecord["status"]) => renderToStaticMarkup( createElement( MemoryRouter, null, createElement(DownloadOrganizeIssue, { record: { id: "record", status, reason: { code: "episode_unresolved", message: "集数待确认" }, } as PublicOrganizationRecord, }), ), ); it("下载详情中的部分结果与失败都指向原整理记录,成功没有问题提示", () => { expect(render("partial")).toContain("部分整理完成,还有文件需要处理"); expect(render("partial")).toContain("/console/organize?open=record"); expect(render("partial")).toContain("集数待确认"); expect(render("partial")).toContain("text-warning"); expect(render("failed")).toContain("整理失败"); expect(render("failed")).toContain("text-destructive"); expect(render("succeeded")).toBe(""); });