diff --git a/src/test.ts b/src/test.ts index 5cbc000de..0b24d7f54 100644 --- a/src/test.ts +++ b/src/test.ts @@ -104,67 +104,36 @@ function compileGeneratedFiles(lib: string, ...files: string[]) { } function test() { - if ( + const targets = ["es5", "es6", "es2018"]; + const modules = [ + "dom", + "webworker", + "sharedworker", + "serviceworker", + "audioworklet", + ]; + const suffixes: Record = { + es5: ["generated.d.ts"], + es6: ["generated.d.ts", "iterable.generated.d.ts"], + es2018: ["generated.d.ts", "asynciterable.generated.d.ts"], + }; + + const allPassed = compareToBaselines(baselineFolder, outputFolder) && - compileGeneratedFiles("es5", "dom.generated.d.ts") && - compileGeneratedFiles( - "es6", - "dom.generated.d.ts", - "dom.iterable.generated.d.ts", - ) && - compileGeneratedFiles( - "es2018", - "dom.generated.d.ts", - "dom.asynciterable.generated.d.ts", - ) && - compileGeneratedFiles("es5", "webworker.generated.d.ts") && - compileGeneratedFiles( - "es6", - "webworker.generated.d.ts", - "webworker.iterable.generated.d.ts", - ) && - compileGeneratedFiles( - "es2018", - "webworker.generated.d.ts", - "webworker.asynciterable.generated.d.ts", - ) && - compileGeneratedFiles("es5", "sharedworker.generated.d.ts") && - compileGeneratedFiles( - "es6", - "sharedworker.generated.d.ts", - "sharedworker.iterable.generated.d.ts", - ) && - compileGeneratedFiles( - "es2018", - "sharedworker.generated.d.ts", - "sharedworker.asynciterable.generated.d.ts", - ) && - compileGeneratedFiles("es5", "serviceworker.generated.d.ts") && - compileGeneratedFiles( - "es6", - "serviceworker.generated.d.ts", - "serviceworker.iterable.generated.d.ts", - ) && - compileGeneratedFiles( - "es2018", - "serviceworker.generated.d.ts", - "serviceworker.asynciterable.generated.d.ts", - ) && - compileGeneratedFiles("es5", "audioworklet.generated.d.ts") && - compileGeneratedFiles( - "es6", - "audioworklet.generated.d.ts", - "audioworklet.iterable.generated.d.ts", - ) && - compileGeneratedFiles( - "es2018", - "audioworklet.generated.d.ts", - "audioworklet.asynciterable.generated.d.ts", - ) - ) { + modules.every((mod) => + targets.every((target) => + compileGeneratedFiles( + target, + ...suffixes[target].map((suffix) => `${mod}.${suffix}`), + ), + ), + ); + + if (allPassed) { console.log("All tests passed."); process.exit(0); } + process.exit(1); }