Skip to content

Commit ff930e8

Browse files
committed
WIP add vitest
1 parent cc131d3 commit ff930e8

File tree

6 files changed

+908
-26
lines changed

6 files changed

+908
-26
lines changed

test/package.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"private": true,
33
"license": "MIT",
44
"scripts": {
5-
"test": "jest",
5+
"test": "vitest --globals",
66
"g:ts-node": "cd $INIT_CWD && ts-node",
77
"postinstall": "node prepare.mjs"
88
},
@@ -25,7 +25,8 @@
2525
"typescript": "^5.5.4",
2626
"typescript-four-seven": "npm:[email protected]",
2727
"typescript-three": "npm:[email protected]",
28-
"typescript-transform-paths": "portal:../"
28+
"typescript-transform-paths": "portal:../",
29+
"vitest": "^2.0.5"
2930
},
3031
"workspaces": [
3132
"projects/*"

test/tests/extras.test.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ describe(`Extra Tests`, () => {
1818
describe(`Built Tests`, () => {
1919
// see: https://github.com/LeDDGroup/typescript-transform-paths/issues/130
2020
test(`Transformer works without ts-node being present`, () => {
21-
jest.doMock(
21+
vi.doMock(
2222
"ts-node",
2323
() => {
2424
throw new ModuleNotFoundError("ts-node");
@@ -30,7 +30,7 @@ describe(`Extra Tests`, () => {
3030
const res = getEmitResultFromProgram(program);
3131
expect(res[indexFile].js).toMatch(`var _identifier_1 = require("./id")`);
3232
} finally {
33-
jest.dontMock("ts-node");
33+
vi.dontMock("ts-node");
3434
}
3535
});
3636

test/tests/nx.test.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@ import * as transformerModule from "typescript-transform-paths/dist/transformer"
1212

1313
describe(`NX Transformer`, () => {
1414
describe("Plugin", () => {
15-
let mockedTransformer: jest.SpyInstance;
15+
let mockedTransformer: vi.SpyInstance;
1616

1717
const program: any = { x: 1 };
1818

1919
beforeAll(async () => {
20-
mockedTransformer = jest.spyOn(transformerModule, "default").mockReturnValue(<any>(() => {}));
20+
mockedTransformer = vi.spyOn(transformerModule, "default").mockReturnValue(<any>(() => {}));
2121
});
2222
afterAll(() => {
2323
mockedTransformer.mockClear();

test/tests/register.test.ts

+14-14
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,9 @@ describe(`Register script`, () => {
4545
test(`Registers initial ts-node if none found`, () => {
4646
const originalTsNodeInstance = global.process[instanceSymbol];
4747
global.process[instanceSymbol] = void 0;
48-
let registerSpy: jest.SpyInstance | undefined;
48+
let registerSpy: vi.SpyInstance | undefined;
4949
try {
50-
registerSpy = jest.spyOn(tsNode, "register");
50+
registerSpy = vi.spyOn(tsNode, "register");
5151
expect(global.process[instanceSymbol]).toBeUndefined();
5252

5353
register.initialize();
@@ -65,9 +65,9 @@ describe(`Register script`, () => {
6565

6666
const originalTsNodeInstance = global.process[instanceSymbol];
6767
global.process[instanceSymbol] = fakeInstance;
68-
let registerSpy: jest.SpyInstance | undefined;
68+
let registerSpy: vi.SpyInstance | undefined;
6969
try {
70-
registerSpy = jest.spyOn(tsNode, "register");
70+
registerSpy = vi.spyOn(tsNode, "register");
7171

7272
const { tsNodeInstance } = register.initialize();
7373

@@ -89,26 +89,26 @@ describe(`Register script`, () => {
8989

9090
describe(`Register`, () => {
9191
test(`Throws without ts-node`, () => {
92-
jest.doMock(
92+
vi.doMock(
9393
"ts-node",
9494
() => {
9595
throw new ModuleNotFoundError("ts-node");
9696
},
9797
{ virtual: true },
9898
);
9999
expect(() => register()).toThrow(`Cannot resolve ts-node`);
100-
jest.dontMock("ts-node");
100+
vi.dontMock("ts-node");
101101
});
102102

103103
test(`Throws if can't register ts-node`, () => {
104-
jest.doMock("ts-node", () => ({ register: () => {} }), { virtual: true });
104+
vi.doMock("ts-node", () => ({ register: () => {} }), { virtual: true });
105105
expect(() => register()).toThrow(`Could not register ts-node instance!`);
106-
jest.dontMock("ts-node");
106+
vi.dontMock("ts-node");
107107
});
108108

109109
test(`No transformers in tsConfig exits quietly`, () => {
110110
const originalInitialize = register.initialize;
111-
const initializeSpy = jest.spyOn(register, "initialize");
111+
const initializeSpy = vi.spyOn(register, "initialize");
112112
try {
113113
initializeSpy.mockImplementation(() => {
114114
const res = originalInitialize();
@@ -133,7 +133,7 @@ describe(`Register script`, () => {
133133
after: [fakeExistingTransformer],
134134
afterDeclarations: [fakeExistingTransformer],
135135
};
136-
const transformerFactoryFn = jest.fn().mockReturnValue(fakeTransformerConfig);
136+
const transformerFactoryFn = vi.fn().mockReturnValue(fakeTransformerConfig);
137137
const fakeProgram: any = {};
138138

139139
let existingTransformers: CustomTransformers | ((p: Program) => CustomTransformers) | undefined;
@@ -149,19 +149,19 @@ describe(`Register script`, () => {
149149
}
150150

151151
describe.each(configMap)(`$label`, ({ transformers, hasBefore, hasAfterDeclarations }) => {
152-
let mockTransformer: jest.SpyInstance;
153-
let initializeSpy: jest.SpyInstance;
152+
let mockTransformer: vi.SpyInstance;
153+
let initializeSpy: vi.SpyInstance;
154154
let registerResult: tsNode.RegisterOptions;
155155
let instanceRegistrationResult: tsNode.Service;
156156
let mergedTransformers: CustomTransformers;
157157

158158
beforeAll(() => {
159-
mockTransformer = jest.spyOn(transformerModule, "default").mockReturnValue(fakeTransformer);
159+
mockTransformer = vi.spyOn(transformerModule, "default").mockReturnValue(fakeTransformer);
160160

161161
global.process[instanceSymbol] = void 0;
162162

163163
const originalInitialize = register.initialize;
164-
initializeSpy = jest.spyOn(register, "initialize");
164+
initializeSpy = vi.spyOn(register, "initialize");
165165
initializeSpy.mockImplementation(() => {
166166
const res = originalInitialize();
167167
if (existingTransformers) res.tsNodeInstance.options.transformers = existingTransformers;

test/tests/transformer/specific.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ const moduleAugmentFile = ts.normalizePath(path.join(projectRoot, "src/module-au
4040
* ****************************************************************************************************************** */
4141

4242
declare global {
43-
namespace jest {
43+
namespace vi {
4444
interface Matchers<R> {
4545
transformedMatches(expected: RegExp | string, opt?: { base?: EmittedFiles[]; kind?: ("dts" | "js")[] }): void;
4646
}

0 commit comments

Comments
 (0)