|
1 | 1 | // noinspection ES6UnusedImports
|
2 | 2 | import * as path from "node:path";
|
| 3 | +import { describe, before, test } from "node:test"; |
3 | 4 | import { createTsProgram, EmittedFiles, getEmitResultFromProgram } from "../../utils";
|
4 | 5 | import { ts, tsModules, projectsPaths } from "../../config";
|
5 | 6 |
|
@@ -30,33 +31,36 @@ describe(`Transformer -> General Tests`, () => {
|
30 | 31 | const projectRoot = path.join(projectsPaths, "general");
|
31 | 32 | const tsConfigFile = path.join(projectRoot, "tsconfig.json");
|
32 | 33 |
|
33 |
| - describe.each(tsModules)(`TypeScript %s`, (s, tsInstance) => { |
34 |
| - let originalFiles: EmittedFiles = {}; |
35 |
| - let transformedFiles: EmittedFiles = {}; |
| 34 | + for (const [s, tsInstance] of tsModules) |
| 35 | + describe(`TypeScript ${s}`, () => { |
| 36 | + let originalFiles: EmittedFiles = {}; |
| 37 | + let transformedFiles: EmittedFiles = {}; |
36 | 38 |
|
37 |
| - const program = createTsProgram({ tsInstance: tsInstance as typeof ts, tsConfigFile, disablePlugin: true }); |
38 |
| - const programWithTransformer = createTsProgram({ tsInstance: tsInstance as typeof ts, tsConfigFile }); |
39 |
| - const fileNames = program.getRootFileNames() as string[]; |
| 39 | + const program = createTsProgram({ tsInstance: tsInstance as typeof ts, tsConfigFile, disablePlugin: true }); |
| 40 | + const programWithTransformer = createTsProgram({ tsInstance: tsInstance as typeof ts, tsConfigFile }); |
| 41 | + const fileNames = program.getRootFileNames() as string[]; |
40 | 42 |
|
41 |
| - beforeAll(() => { |
42 |
| - originalFiles = getEmitResultFromProgram(program); |
43 |
| - transformedFiles = getEmitResultFromProgram(programWithTransformer); |
44 |
| - }); |
| 43 | + before(() => { |
| 44 | + originalFiles = getEmitResultFromProgram(program); |
| 45 | + transformedFiles = getEmitResultFromProgram(programWithTransformer); |
| 46 | + }); |
45 | 47 |
|
46 |
| - describe.each(fileNames!.map((p) => [p.slice(projectRoot.length), p]))(`%s`, (_, file) => { |
47 |
| - let expected: EmittedFiles[string]; |
48 |
| - let transformed: EmittedFiles[string]; |
| 48 | + for (const file of fileNames!) { |
| 49 | + describe(file, () => { |
| 50 | + let expected: EmittedFiles[string]; |
| 51 | + let transformed: EmittedFiles[string]; |
49 | 52 |
|
50 |
| - beforeAll(() => { |
51 |
| - transformed = transformedFiles[file]; |
52 |
| - expected = { |
53 |
| - js: getExpected(tsInstance, file, originalFiles[file].js, projectRoot), |
54 |
| - dts: getExpected(tsInstance, file, originalFiles[file].dts, projectRoot), |
55 |
| - }; |
56 |
| - }); |
| 53 | + before(() => { |
| 54 | + transformed = transformedFiles[file]; |
| 55 | + expected = { |
| 56 | + js: getExpected(tsInstance, file, originalFiles[file].js, projectRoot), |
| 57 | + dts: getExpected(tsInstance, file, originalFiles[file].dts, projectRoot), |
| 58 | + }; |
| 59 | + }); |
57 | 60 |
|
58 |
| - test(`js matches`, () => expect(transformed.js).toEqual(expected.js)); |
59 |
| - test(`dts matches`, () => expect(transformed.dts).toEqual(expected.dts)); |
| 61 | + test(`js matches`, (t) => t.assert.strictEqual(transformed.js, expected.js)); |
| 62 | + test(`dts matches`, (t) => t.assert.strictEqual(transformed.dts, expected.dts)); |
| 63 | + }); |
| 64 | + } |
60 | 65 | });
|
61 |
| - }); |
62 | 66 | });
|
0 commit comments