import type { Diagnostic } from "@typespec/compiler"; import { resolvePath } from "@typespec/compiler"; import { createTester, expectDiagnosticEmpty } from "@typespec/compiler/testing"; const ApiTester = createTester(resolvePath(import.meta.dirname, ".."), { libraries: ["@typespec/http", "@typespec/rest", "@typespec/http-client-js"], }); export const Tester = ApiTester.emit("@typespec/http-client-js"); export async function emitWithDiagnostics( code: string, ): Promise<[Record, readonly Diagnostic[]]> { const [result, diagnostics] = await Tester.compileAndDiagnose(code); return [result.outputs, diagnostics]; } export async function emit(code: string): Promise> { const [result, diagnostics] = await emitWithDiagnostics(code); expectDiagnosticEmpty(diagnostics); return result; }