23 lines
856 B
TypeScript
23 lines
856 B
TypeScript
import assert from "node:assert/strict";
|
|
import { mkdtempSync, rmSync, writeFileSync } from "node:fs";
|
|
import { tmpdir } from "node:os";
|
|
import { join } from "node:path";
|
|
import test from "node:test";
|
|
|
|
import { run as build } from "../build/action.js";
|
|
import { run as validate } from "./action.js";
|
|
|
|
test("validate accepts Draw.io generated with a standard XML declaration", () => {
|
|
const dir = mkdtempSync(join(tmpdir(), "drawio-validate-test-"));
|
|
const spec = join(dir, "spec.yaml");
|
|
const diagram = join(dir, "diagram.drawio");
|
|
try {
|
|
writeFileSync(spec, "version: 1\nnodes:\n - { id: node, label: Node }\n", "utf8");
|
|
build(spec, 0, diagram);
|
|
const result = validate(diagram);
|
|
assert.deepEqual(result.summary, { pages: 1, valid: true, invalidPages: 0 });
|
|
} finally {
|
|
rmSync(dir, { recursive: true, force: true });
|
|
}
|
|
});
|