@sxzz/test-utils
Version:
Collection of common test utils.
64 lines (63 loc) • 3.25 kB
text/typescript
import { GlobOptions as GlobOptions$1 } from "tinyglobby";
import { InputOption, InputOptions, OutputAsset, OutputChunk, OutputOptions, RolldownOutput, RolldownPluginOption } from "rolldown";
import { InputOption as InputOption$1, InputOptions as InputOptions$1, InputPluginOption, OutputAsset as OutputAsset$1, OutputChunk as OutputChunk$1, OutputOptions as OutputOptions$1, Plugin, RollupOutput } from "rollup";
import { OutputFile } from "esbuild";
import { ExpectStatic } from "vitest";
import { RawVueCompilerOptions } from "@vue/language-core";
import { Plugin as Plugin$1 } from "ts-macro";
import { CompilerOptions, Program } from "typescript";
//#region src/fixture.d.ts
type SkipFn = (testName: string) => boolean | Promise<boolean>;
declare function testFixturesSkip(fn: SkipFn): void;
interface FixtureOptions {
params?: [name: string, values?: any[]][];
promise?: boolean;
concurrent?: boolean;
snapshot?: boolean;
}
type GlobOptions = GlobOptions$1 & {
cwd?: string;
};
declare function testFixtures(globs: string | string[], exec: (args: Record<string, any>, id: string) => any, options?: GlobOptions & FixtureOptions): Promise<void>;
declare function testFixtures(files: Record<string, string>, exec: (args: Record<string, any>, id: string, code: string) => any, options?: FixtureOptions): Promise<void>;
//#endregion
//#region src/path.d.ts
declare function normalizePath(path: string): string;
declare function replacePath(source: string, search: string, replacement: string): string;
//#endregion
//#region src/rolldown.d.ts
declare function rolldownBuild(input: InputOption, plugins?: RolldownPluginOption, inputOptions?: InputOptions, outputOptions?: OutputOptions): Promise<{
chunks: RolldownOutput["output"];
snapshot: string;
}>;
//#endregion
//#region src/rollup.d.ts
declare function rollupBuild(input: InputOption$1, plugins?: InputPluginOption, inputOptions?: InputOptions$1, outputOptions?: OutputOptions$1): Promise<{
chunks: RollupOutput["output"];
snapshot: string;
}>;
declare const RollupToStringPlugin: () => Plugin;
declare const RollupEscapeNullCharacterPlugin: () => Plugin;
//#endregion
//#region src/snapshot.d.ts
declare function outputToSnapshot(chunks: (OutputChunk$1 | OutputAsset$1 | OutputChunk | OutputAsset | OutputFile)[]): string;
declare function expectFilesSnapshot(sourceDir: string, snapshotFile: string, {
pattern,
expect
}?: {
pattern?: string;
expect?: ExpectStatic;
}): Promise<{
files: string[];
fileMap: Record<string, string>;
snapshot: string;
}>;
//#endregion
//#region src/string.d.ts
declare function removeSpaces(s: string): string;
//#endregion
//#region src/volar.d.ts
declare function createTsMacroProgram(rootNames: string[], plugins: Plugin$1[], compilerOptions?: CompilerOptions): Promise<Program>;
declare function createVueProgram(rootNames: string[], compilerOptions?: CompilerOptions, vueCompilerOptions?: RawVueCompilerOptions): Promise<Program>;
//#endregion
export { FixtureOptions, GlobOptions, RollupEscapeNullCharacterPlugin, RollupToStringPlugin, createTsMacroProgram, createVueProgram, expectFilesSnapshot, normalizePath, outputToSnapshot, removeSpaces, replacePath, rolldownBuild, rollupBuild, testFixtures, testFixturesSkip };