Skip to content

Commit d0c1ebb

Browse files
committed
WIP add vitest
1 parent 0a51567 commit d0c1ebb

File tree

6 files changed

+841
-29
lines changed

6 files changed

+841
-29
lines changed

test/package.json

Lines changed: 3 additions & 2 deletions
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:typescript@4.7.4",
2727
"typescript-three": "npm:typescript@3.6.5",
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

Lines changed: 2 additions & 2 deletions
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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@ import { projectsPaths } from "../config";
1515

1616
describe(`NX Transformer`, () => {
1717
describe("Plugin", () => {
18-
let mockedTransformer: jest.SpyInstance;
18+
let mockedTransformer: vi.SpyInstance;
1919

2020
const program: any = { x: 1 };
2121

2222
beforeAll(async () => {
23-
mockedTransformer = jest.spyOn(transformerModule, "default").mockReturnValue(<any>(() => {}));
23+
mockedTransformer = vi.spyOn(transformerModule, "default").mockReturnValue(<any>(() => {}));
2424
});
2525
afterAll(() => {
2626
mockedTransformer.mockClear();

test/tests/register.test.ts

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -47,9 +47,9 @@ describe(`Register script`, () => {
4747
test(`Registers initial ts-node if none found`, () => {
4848
const originalTsNodeInstance = global.process[instanceSymbol];
4949
global.process[instanceSymbol] = void 0;
50-
let registerSpy: jest.SpyInstance | undefined;
50+
let registerSpy: vi.SpyInstance | undefined;
5151
try {
52-
registerSpy = jest.spyOn(tsNode, "register");
52+
registerSpy = vi.spyOn(tsNode, "register");
5353
expect(global.process[instanceSymbol]).toBeUndefined();
5454

5555
register.initialize();
@@ -67,9 +67,9 @@ describe(`Register script`, () => {
6767

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

7474
const { tsNodeInstance } = register.initialize();
7575

@@ -91,26 +91,26 @@ describe(`Register script`, () => {
9191

9292
describe(`Register`, () => {
9393
test(`Throws without ts-node`, () => {
94-
jest.doMock(
94+
vi.doMock(
9595
"ts-node",
9696
() => {
9797
throw new ModuleNotFoundError("ts-node");
9898
},
9999
{ virtual: true },
100100
);
101101
expect(() => register()).toThrow(`Cannot resolve ts-node`);
102-
jest.dontMock("ts-node");
102+
vi.dontMock("ts-node");
103103
});
104104

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

111111
test(`No transformers in tsConfig exits quietly`, () => {
112112
const originalInitialize = register.initialize;
113-
const initializeSpy = jest.spyOn(register, "initialize");
113+
const initializeSpy = vi.spyOn(register, "initialize");
114114
try {
115115
initializeSpy.mockImplementation(() => {
116116
const res = originalInitialize();
@@ -135,7 +135,7 @@ describe(`Register script`, () => {
135135
after: [fakeExistingTransformer],
136136
afterDeclarations: [fakeExistingTransformer],
137137
};
138-
const transformerFactoryFn = jest.fn().mockReturnValue(fakeTransformerConfig);
138+
const transformerFactoryFn = vi.fn().mockReturnValue(fakeTransformerConfig);
139139
const fakeProgram: any = {};
140140

141141
let existingTransformers: CustomTransformers | ((p: Program) => CustomTransformers) | undefined;
@@ -151,19 +151,19 @@ describe(`Register script`, () => {
151151
}
152152

153153
describe.each(configMap)(`$label`, ({ transformers, hasBefore, hasAfterDeclarations }) => {
154-
let mockTransformer: jest.SpyInstance;
155-
let initializeSpy: jest.SpyInstance;
154+
let mockTransformer: vi.SpyInstance;
155+
let initializeSpy: vi.SpyInstance;
156156
let registerResult: tsNode.RegisterOptions;
157157
let instanceRegistrationResult: tsNode.Service;
158158
let mergedTransformers: CustomTransformers;
159159

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

163163
global.process[instanceSymbol] = void 0;
164164

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

test/tests/transformer/specific.test.ts

Lines changed: 1 addition & 1 deletion
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
// eslint-disable-next-line @typescript-eslint/no-unused-vars -- no way to extend type definitions without using the same declaration as the original types
4545
interface Matchers<R> {
4646
transformedMatches(expected: RegExp | string, opt?: { base?: EmittedFiles[]; kind?: ("dts" | "js")[] }): void;

0 commit comments

Comments
 (0)