import { describe, expect, it } from "vitest"; import AdmZip from "adm-zip"; import { extractSpreadsheetFromZip } from "@/services/parse/zip-extract"; describe("zip-extract", () => { it("extracts one-layer xlsx", () => { const zip = new AdmZip(); zip.addFile("卡派资料.xlsx", Buffer.from("fake-xlsx")); const res = extractSpreadsheetFromZip(zip.toBuffer()); expect(res.errorCode).toBeUndefined(); expect(res.files[0].filename).toBe("卡派资料.xlsx"); }); it("ignores nested zip", () => { const inner = new AdmZip(); inner.addFile("a.xlsx", Buffer.from("x")); const outer = new AdmZip(); outer.addFile("nested.zip", inner.toBuffer()); const res = extractSpreadsheetFromZip(outer.toBuffer()); expect(res.warnings).toContain("zip.nested_ignored"); }); });