mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-03-18 07:24:07 +01:00
Add .oxfmtignore to skip generated bindings and wasm-pack output. Add npm format script, update DEVELOPMENT.md for Vite+ toolchain, and format all non-generated files with oxfmt. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
53 lines
1.6 KiB
TypeScript
53 lines
1.6 KiB
TypeScript
import * as fs from "node:fs";
|
|
import * as path from "node:path";
|
|
import { describe, expect, test } from "vite-plus/test";
|
|
import { convertOpenApi } from "../src";
|
|
|
|
describe("importer-openapi", () => {
|
|
const p = path.join(__dirname, "fixtures");
|
|
const fixtures = fs.readdirSync(p);
|
|
|
|
test("Maps operation description to request description", async () => {
|
|
const imported = await convertOpenApi(
|
|
JSON.stringify({
|
|
openapi: "3.0.0",
|
|
info: { title: "Description Test", version: "1.0.0" },
|
|
paths: {
|
|
"/klanten": {
|
|
get: {
|
|
description: "Lijst van klanten",
|
|
responses: { "200": { description: "ok" } },
|
|
},
|
|
},
|
|
},
|
|
}),
|
|
);
|
|
|
|
expect(imported?.resources.httpRequests).toEqual([
|
|
expect.objectContaining({
|
|
description: "Lijst van klanten",
|
|
}),
|
|
]);
|
|
});
|
|
|
|
test("Skips invalid file", async () => {
|
|
const imported = await convertOpenApi("{}");
|
|
expect(imported).toBeUndefined();
|
|
});
|
|
|
|
for (const fixture of fixtures) {
|
|
test(`Imports ${fixture}`, async () => {
|
|
const contents = fs.readFileSync(path.join(p, fixture), "utf-8");
|
|
const imported = await convertOpenApi(contents);
|
|
expect(imported?.resources.workspaces).toEqual([
|
|
expect.objectContaining({
|
|
name: "Swagger Petstore - OpenAPI 3.0",
|
|
description: expect.stringContaining("This is a sample Pet Store Server"),
|
|
}),
|
|
]);
|
|
expect(imported?.resources.httpRequests.length).toBe(19);
|
|
expect(imported?.resources.folders.length).toBe(7);
|
|
});
|
|
}
|
|
});
|