Files
WRNexusJS/packages/plugin/test/compatibility.test.ts
Clintchiz 586a6db8ff
Quality / quality (ubuntu-latest) (push) Failing after 21s
Quality / quality (windows-latest) (push) Canceled after 0s
release: WRNexusJS 0.8.0
2026-08-02 23:18:51 +05:30

28 lines
979 B
TypeScript

import { expect, test } from "bun:test";
import { testPluginCompatibility } from "../src/index.ts";
test("plugin compatibility kit evaluates runtime, Bun, OS, and capability matrices", () => {
const results = testPluginCompatibility(
{
runtimes: ["bun", "node"],
requires: ["filesystem"],
compatibility: { bunMin: "1.3.0", os: ["linux", "darwin"] },
},
[
{ runtime: "bun", version: "1.3.2", os: "linux", capabilities: ["filesystem"] },
{ runtime: "bun", version: "1.2.9", os: "win32", capabilities: [] },
{ runtime: "edge", os: "linux", capabilities: ["crypto"] },
],
);
expect(results[0]?.ok).toBe(true);
expect(results[1]?.issues.map((issue) => issue.code)).toEqual([
"WRN-PLUGIN-MATRIX-VERSION",
"WRN-PLUGIN-MATRIX-OS",
"WRN-PLUGIN-MATRIX-CAPABILITY",
]);
expect(results[2]?.issues.map((issue) => issue.code)).toEqual([
"WRN-PLUGIN-MATRIX-RUNTIME",
"WRN-PLUGIN-MATRIX-CAPABILITY",
]);
});