Files
rust_fmt/test_bun/bun.spec.ts
2025-09-20 20:44:24 +08:00

29 lines
731 B
TypeScript

import { Glob } from "bun";
import { expect, test } from "bun:test";
import { chdir } from "node:process";
import { fileURLToPath } from "node:url";
import init, { format } from "../pkg/rust_fmt";
await init();
const test_root = fileURLToPath(import.meta.resolve("../test_data"));
chdir(test_root);
const glob = new Glob("**/*.rs");
for await (const input_path of glob.scan()) {
const [input, expected] = await Promise.all([
Bun.file(input_path).text(),
Bun.file(input_path + ".snap").text().catch(() => {
// 如果没有 snap 文件,就创建一个
const formatted = format(input);
return formatted;
}),
]);
test(input_path, () => {
const actual = format(input);
expect(actual).toBe(expected);
});
}