Implementa o MVP do Adaptador de Planilhas no Elo Pro.

O módulo usa a identidade Supabase, isola cada workspace e registra storage, TTL, runner e biblioteca XLSX como decisões ainda abertas.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
camilafagundesandCursor committed 2026-10-02 23:02:00 -03:00
commit 6e23f1533b
144 files changed
+19060

No files matched your search

+19
View File
@@ -0,0 +1,19 @@
import { describe, expect, it } from "vitest";
import { parseCsvText } from "@/domain/spreadsheet-adapter/csv";
import { gridFromRows } from "@/domain/spreadsheet-adapter/csv";
import { transformRows } from "@/domain/spreadsheet-adapter/transform";
import { buildCsv } from "@/infra/export/tabular";
describe("capacidade", () => {
it("transforma 50.000 linhas úteis sem perder registros", () => {
const lines = ["Origem"];
for (let index = 0; index < 50_000; index += 1) lines.push(String(index));
const grid = gridFromRows(parseCsvText(lines.join("\n")), 1, ["CSV"], "CSV");
expect(grid.rows).toHaveLength(50_000);
const output = transformRows(["Destino"], grid.headers, grid.rows, [{ sourceColumn: "Origem", modelColumn: "Destino" }]);
expect(output).toHaveLength(50_000);
expect(output[49_999][0]).toBe("49999");
const csv = buildCsv(["Destino"], output.slice(0, 2));
expect(csv.toString("utf8")).toContain("0");
});
});