modestbench 0.3.2 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/README.md +45 -2
- package/dist/adapters/ava-adapter.cjs +421 -0
- package/dist/adapters/ava-adapter.cjs.map +1 -0
- package/dist/adapters/ava-adapter.d.cts +39 -0
- package/dist/adapters/ava-adapter.d.cts.map +1 -0
- package/dist/adapters/ava-adapter.d.ts +39 -0
- package/dist/adapters/ava-adapter.d.ts.map +1 -0
- package/dist/adapters/ava-adapter.js +384 -0
- package/dist/adapters/ava-adapter.js.map +1 -0
- package/dist/adapters/ava-hooks.cjs +66 -0
- package/dist/adapters/ava-hooks.cjs.map +1 -0
- package/dist/adapters/ava-hooks.d.cts +24 -0
- package/dist/adapters/ava-hooks.d.cts.map +1 -0
- package/dist/adapters/ava-hooks.d.ts +24 -0
- package/dist/adapters/ava-hooks.d.ts.map +1 -0
- package/dist/adapters/ava-hooks.js +61 -0
- package/dist/adapters/ava-hooks.js.map +1 -0
- package/dist/adapters/ava-register.cjs +16 -0
- package/dist/adapters/ava-register.cjs.map +1 -0
- package/dist/adapters/ava-register.d.cts +11 -0
- package/dist/adapters/ava-register.d.cts.map +1 -0
- package/dist/adapters/ava-register.d.ts +11 -0
- package/dist/adapters/ava-register.d.ts.map +1 -0
- package/dist/adapters/ava-register.js +14 -0
- package/dist/adapters/ava-register.js.map +1 -0
- package/dist/adapters/mocha-adapter.cjs +254 -0
- package/dist/adapters/mocha-adapter.cjs.map +1 -0
- package/dist/adapters/mocha-adapter.d.cts +26 -0
- package/dist/adapters/mocha-adapter.d.cts.map +1 -0
- package/dist/adapters/mocha-adapter.d.ts +26 -0
- package/dist/adapters/mocha-adapter.d.ts.map +1 -0
- package/dist/adapters/mocha-adapter.js +217 -0
- package/dist/adapters/mocha-adapter.js.map +1 -0
- package/dist/adapters/node-test-adapter.cjs +335 -0
- package/dist/adapters/node-test-adapter.cjs.map +1 -0
- package/dist/adapters/node-test-adapter.d.cts +41 -0
- package/dist/adapters/node-test-adapter.d.cts.map +1 -0
- package/dist/adapters/node-test-adapter.d.ts +41 -0
- package/dist/adapters/node-test-adapter.d.ts.map +1 -0
- package/dist/adapters/node-test-adapter.js +298 -0
- package/dist/adapters/node-test-adapter.js.map +1 -0
- package/dist/adapters/node-test-hooks.cjs +72 -0
- package/dist/adapters/node-test-hooks.cjs.map +1 -0
- package/dist/adapters/node-test-hooks.d.cts +24 -0
- package/dist/adapters/node-test-hooks.d.cts.map +1 -0
- package/dist/adapters/node-test-hooks.d.ts +24 -0
- package/dist/adapters/node-test-hooks.d.ts.map +1 -0
- package/dist/adapters/node-test-hooks.js +67 -0
- package/dist/adapters/node-test-hooks.js.map +1 -0
- package/dist/adapters/node-test-register.cjs +7 -0
- package/dist/adapters/node-test-register.cjs.map +1 -0
- package/dist/adapters/node-test-register.d.cts +2 -0
- package/dist/adapters/node-test-register.d.cts.map +1 -0
- package/dist/adapters/node-test-register.d.ts +2 -0
- package/dist/adapters/node-test-register.d.ts.map +1 -0
- package/dist/adapters/node-test-register.js +5 -0
- package/dist/adapters/node-test-register.js.map +1 -0
- package/dist/adapters/types.cjs +152 -0
- package/dist/adapters/types.cjs.map +1 -0
- package/dist/adapters/types.d.cts +112 -0
- package/dist/adapters/types.d.cts.map +1 -0
- package/dist/adapters/types.d.ts +112 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +148 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/cli/commands/init.cjs +21 -17
- package/dist/cli/commands/init.cjs.map +1 -1
- package/dist/cli/commands/init.d.cts.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +21 -17
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/run.cjs +6 -2
- package/dist/cli/commands/run.cjs.map +1 -1
- package/dist/cli/commands/run.js +6 -2
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/test.cjs +392 -0
- package/dist/cli/commands/test.cjs.map +1 -0
- package/dist/cli/commands/test.d.cts +38 -0
- package/dist/cli/commands/test.d.cts.map +1 -0
- package/dist/cli/commands/test.d.ts +38 -0
- package/dist/cli/commands/test.d.ts.map +1 -0
- package/dist/cli/commands/test.js +388 -0
- package/dist/cli/commands/test.js.map +1 -0
- package/dist/cli/index.cjs +72 -1
- package/dist/cli/index.cjs.map +1 -1
- package/dist/cli/index.d.cts.map +1 -1
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +73 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/constants.cjs +13 -1
- package/dist/constants.cjs.map +1 -1
- package/dist/constants.d.cts +12 -0
- package/dist/constants.d.cts.map +1 -1
- package/dist/constants.d.ts +12 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +12 -0
- package/dist/constants.js.map +1 -1
- package/dist/core/engine.cjs +4 -0
- package/dist/core/engine.cjs.map +1 -1
- package/dist/core/engine.d.cts.map +1 -1
- package/dist/core/engine.d.ts.map +1 -1
- package/dist/core/engine.js +4 -0
- package/dist/core/engine.js.map +1 -1
- package/dist/core/engines/tinybench-engine.cjs +163 -131
- package/dist/core/engines/tinybench-engine.cjs.map +1 -1
- package/dist/core/engines/tinybench-engine.d.cts +6 -0
- package/dist/core/engines/tinybench-engine.d.cts.map +1 -1
- package/dist/core/engines/tinybench-engine.d.ts +6 -0
- package/dist/core/engines/tinybench-engine.d.ts.map +1 -1
- package/dist/core/engines/tinybench-engine.js +163 -131
- package/dist/core/engines/tinybench-engine.js.map +1 -1
- package/dist/errors/base.cjs +2 -1
- package/dist/errors/base.cjs.map +1 -1
- package/dist/errors/base.d.cts.map +1 -1
- package/dist/errors/base.d.ts.map +1 -1
- package/dist/errors/base.js +2 -1
- package/dist/errors/base.js.map +1 -1
- package/dist/reporters/human.cjs +83 -27
- package/dist/reporters/human.cjs.map +1 -1
- package/dist/reporters/human.d.cts +1 -0
- package/dist/reporters/human.d.cts.map +1 -1
- package/dist/reporters/human.d.ts +1 -0
- package/dist/reporters/human.d.ts.map +1 -1
- package/dist/reporters/human.js +83 -27
- package/dist/reporters/human.js.map +1 -1
- package/dist/reporters/simple.cjs +68 -21
- package/dist/reporters/simple.cjs.map +1 -1
- package/dist/reporters/simple.d.cts +1 -0
- package/dist/reporters/simple.d.cts.map +1 -1
- package/dist/reporters/simple.d.ts +1 -0
- package/dist/reporters/simple.d.ts.map +1 -1
- package/dist/reporters/simple.js +68 -21
- package/dist/reporters/simple.js.map +1 -1
- package/dist/services/config-manager.cjs +1 -1
- package/dist/services/config-manager.cjs.map +1 -1
- package/dist/services/config-manager.js +2 -2
- package/dist/services/config-manager.js.map +1 -1
- package/package.json +60 -31
- package/src/adapters/ava-adapter.ts +553 -0
- package/src/adapters/ava-hooks.ts +65 -0
- package/src/adapters/ava-register.ts +15 -0
- package/src/adapters/mocha-adapter.ts +284 -0
- package/src/adapters/node-test-adapter.ts +391 -0
- package/src/adapters/node-test-hooks.ts +71 -0
- package/src/adapters/node-test-register.ts +5 -0
- package/src/adapters/types.ts +281 -0
- package/src/cli/commands/init.ts +25 -17
- package/src/cli/commands/run.ts +9 -2
- package/src/cli/commands/test.ts +546 -0
- package/src/cli/index.ts +81 -1
- package/src/constants.ts +15 -0
- package/src/core/engine.ts +5 -0
- package/src/core/engines/tinybench-engine.ts +213 -141
- package/src/errors/base.ts +3 -2
- package/src/reporters/human.ts +107 -36
- package/src/reporters/simple.ts +81 -22
- package/src/services/config-manager.ts +2 -2
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ModestBench Mocha Adapter
|
|
4
|
+
*
|
|
5
|
+
* Captures test definitions from Mocha test files by replacing global
|
|
6
|
+
* `describe`, `it`, and hook functions before the test file loads.
|
|
7
|
+
*
|
|
8
|
+
* Mocha exposes these as globals, making interception straightforward - no ES
|
|
9
|
+
* module loader hooks required.
|
|
10
|
+
*/
|
|
11
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
14
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
15
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
16
|
+
}
|
|
17
|
+
Object.defineProperty(o, k2, desc);
|
|
18
|
+
}) : (function(o, m, k, k2) {
|
|
19
|
+
if (k2 === undefined) k2 = k;
|
|
20
|
+
o[k2] = m[k];
|
|
21
|
+
}));
|
|
22
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
23
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
24
|
+
}) : function(o, v) {
|
|
25
|
+
o["default"] = v;
|
|
26
|
+
});
|
|
27
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
28
|
+
var ownKeys = function(o) {
|
|
29
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
30
|
+
var ar = [];
|
|
31
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
32
|
+
return ar;
|
|
33
|
+
};
|
|
34
|
+
return ownKeys(o);
|
|
35
|
+
};
|
|
36
|
+
return function (mod) {
|
|
37
|
+
if (mod && mod.__esModule) return mod;
|
|
38
|
+
var result = {};
|
|
39
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
40
|
+
__setModuleDefault(result, mod);
|
|
41
|
+
return result;
|
|
42
|
+
};
|
|
43
|
+
})();
|
|
44
|
+
var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
|
|
45
|
+
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
46
|
+
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
47
|
+
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return path;
|
|
51
|
+
};
|
|
52
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
exports.MochaAdapter = void 0;
|
|
54
|
+
const node_url_1 = require("node:url");
|
|
55
|
+
/**
|
|
56
|
+
* Mocha test framework adapter
|
|
57
|
+
*
|
|
58
|
+
* Captures tests by installing global mocks before importing the test file.
|
|
59
|
+
*/
|
|
60
|
+
class MochaAdapter {
|
|
61
|
+
framework = 'mocha';
|
|
62
|
+
/**
|
|
63
|
+
* Capture test definitions from a Mocha test file
|
|
64
|
+
*
|
|
65
|
+
* @param filePath - Absolute path to the test file
|
|
66
|
+
* @returns Captured test structure
|
|
67
|
+
*/
|
|
68
|
+
async capture(filePath) {
|
|
69
|
+
// Install our mock globals
|
|
70
|
+
const state = installMochaGlobals();
|
|
71
|
+
try {
|
|
72
|
+
// Import the test file - this triggers describe/it calls
|
|
73
|
+
// which populate our state
|
|
74
|
+
const fileUrl = (0, node_url_1.pathToFileURL)(filePath).href;
|
|
75
|
+
// Use a cache-busting query param to ensure fresh import
|
|
76
|
+
const bustCache = `?t=${Date.now()}`;
|
|
77
|
+
await Promise.resolve(`${__rewriteRelativeImportExtension(fileUrl + bustCache)}`).then(s => __importStar(require(s)));
|
|
78
|
+
// Return captured structure
|
|
79
|
+
return {
|
|
80
|
+
filePath,
|
|
81
|
+
framework: 'mocha',
|
|
82
|
+
rootSuites: state.rootSuites,
|
|
83
|
+
rootTests: state.rootTests,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
finally {
|
|
87
|
+
// Clean up globals
|
|
88
|
+
uninstallMochaGlobals();
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
exports.MochaAdapter = MochaAdapter;
|
|
93
|
+
/**
|
|
94
|
+
* Create empty hooks structure
|
|
95
|
+
*/
|
|
96
|
+
const createEmptyHooks = () => {
|
|
97
|
+
return {
|
|
98
|
+
after: [],
|
|
99
|
+
afterEach: [],
|
|
100
|
+
before: [],
|
|
101
|
+
beforeEach: [],
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Create a new suite structure
|
|
106
|
+
*/
|
|
107
|
+
const createSuite = (name) => {
|
|
108
|
+
return {
|
|
109
|
+
children: [],
|
|
110
|
+
hooks: createEmptyHooks(),
|
|
111
|
+
name,
|
|
112
|
+
tests: [],
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
/**
|
|
116
|
+
* Install Mocha global mocks and return the capture state
|
|
117
|
+
*
|
|
118
|
+
* This replaces globalThis.describe, globalThis.it, etc. with our capturing
|
|
119
|
+
* implementations.
|
|
120
|
+
*/
|
|
121
|
+
const installMochaGlobals = () => {
|
|
122
|
+
const state = {
|
|
123
|
+
currentSuite: null,
|
|
124
|
+
rootSuites: [],
|
|
125
|
+
rootTests: [],
|
|
126
|
+
};
|
|
127
|
+
// describe() - creates a suite
|
|
128
|
+
const describe = (name, fn) => {
|
|
129
|
+
const suite = createSuite(name);
|
|
130
|
+
const parent = state.currentSuite;
|
|
131
|
+
if (parent) {
|
|
132
|
+
// Nested describe: inherit beforeEach/afterEach from parent
|
|
133
|
+
// and add to parent's children
|
|
134
|
+
parent.children.push(suite);
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
// Root-level describe
|
|
138
|
+
state.rootSuites.push(suite);
|
|
139
|
+
}
|
|
140
|
+
// Enter this suite context
|
|
141
|
+
state.currentSuite = suite;
|
|
142
|
+
// Execute the describe body to capture tests and nested describes
|
|
143
|
+
fn();
|
|
144
|
+
// Exit back to parent context
|
|
145
|
+
state.currentSuite = parent;
|
|
146
|
+
};
|
|
147
|
+
// describe.only() - marks suite as exclusive
|
|
148
|
+
describe.only = (name, fn) => {
|
|
149
|
+
// For benchmarking, we treat .only the same as regular
|
|
150
|
+
// (filtering happens at a higher level)
|
|
151
|
+
describe(name, fn);
|
|
152
|
+
};
|
|
153
|
+
// describe.skip() - marks suite as skipped
|
|
154
|
+
describe.skip = (_name, _fn) => {
|
|
155
|
+
// Skip entirely - don't even register
|
|
156
|
+
};
|
|
157
|
+
// it() - creates a test
|
|
158
|
+
const it = (name, fn) => {
|
|
159
|
+
const test = { fn, name };
|
|
160
|
+
if (state.currentSuite) {
|
|
161
|
+
state.currentSuite.tests.push(test);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
// Root-level test (unusual for Mocha but supported)
|
|
165
|
+
state.rootTests.push(test);
|
|
166
|
+
}
|
|
167
|
+
};
|
|
168
|
+
// it.only() - marks test as exclusive
|
|
169
|
+
it.only = (name, fn) => {
|
|
170
|
+
const test = { fn, name, only: true };
|
|
171
|
+
if (state.currentSuite) {
|
|
172
|
+
state.currentSuite.tests.push(test);
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
state.rootTests.push(test);
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
// it.skip() - marks test as skipped
|
|
179
|
+
it.skip = (name, fn) => {
|
|
180
|
+
const test = { fn, name, skip: true };
|
|
181
|
+
if (state.currentSuite) {
|
|
182
|
+
state.currentSuite.tests.push(test);
|
|
183
|
+
}
|
|
184
|
+
else {
|
|
185
|
+
state.rootTests.push(test);
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
// before() - runs once before all tests in suite
|
|
189
|
+
const before = (fn) => {
|
|
190
|
+
if (state.currentSuite) {
|
|
191
|
+
state.currentSuite.hooks.before.push(fn);
|
|
192
|
+
}
|
|
193
|
+
// Root-level before is ignored (no suite to attach to)
|
|
194
|
+
};
|
|
195
|
+
// after() - runs once after all tests in suite
|
|
196
|
+
const after = (fn) => {
|
|
197
|
+
if (state.currentSuite) {
|
|
198
|
+
state.currentSuite.hooks.after.push(fn);
|
|
199
|
+
}
|
|
200
|
+
};
|
|
201
|
+
// beforeEach() - runs before each test
|
|
202
|
+
const beforeEach = (fn) => {
|
|
203
|
+
if (state.currentSuite) {
|
|
204
|
+
state.currentSuite.hooks.beforeEach.push(fn);
|
|
205
|
+
}
|
|
206
|
+
};
|
|
207
|
+
// afterEach() - runs after each test
|
|
208
|
+
const afterEach = (fn) => {
|
|
209
|
+
if (state.currentSuite) {
|
|
210
|
+
state.currentSuite.hooks.afterEach.push(fn);
|
|
211
|
+
}
|
|
212
|
+
};
|
|
213
|
+
// Install globals
|
|
214
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
215
|
+
globalThis.describe = describe;
|
|
216
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
217
|
+
globalThis.it = it;
|
|
218
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
219
|
+
globalThis.before = before;
|
|
220
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
221
|
+
globalThis.after = after;
|
|
222
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
223
|
+
globalThis.beforeEach = beforeEach;
|
|
224
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
225
|
+
globalThis.afterEach = afterEach;
|
|
226
|
+
// Mocha aliases
|
|
227
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
228
|
+
globalThis.context = describe;
|
|
229
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
230
|
+
globalThis.specify = it;
|
|
231
|
+
return state;
|
|
232
|
+
};
|
|
233
|
+
/**
|
|
234
|
+
* Remove Mocha globals installed by installMochaGlobals
|
|
235
|
+
*/
|
|
236
|
+
const uninstallMochaGlobals = () => {
|
|
237
|
+
// @ts-expect-error - cleaning up globalThis
|
|
238
|
+
delete globalThis.describe;
|
|
239
|
+
// @ts-expect-error - cleaning up globalThis
|
|
240
|
+
delete globalThis.it;
|
|
241
|
+
// @ts-expect-error - cleaning up globalThis
|
|
242
|
+
delete globalThis.before;
|
|
243
|
+
// @ts-expect-error - cleaning up globalThis
|
|
244
|
+
delete globalThis.after;
|
|
245
|
+
// @ts-expect-error - cleaning up globalThis
|
|
246
|
+
delete globalThis.beforeEach;
|
|
247
|
+
// @ts-expect-error - cleaning up globalThis
|
|
248
|
+
delete globalThis.afterEach;
|
|
249
|
+
// @ts-expect-error - cleaning up globalThis
|
|
250
|
+
delete globalThis.context;
|
|
251
|
+
// @ts-expect-error - cleaning up globalThis
|
|
252
|
+
delete globalThis.specify;
|
|
253
|
+
};
|
|
254
|
+
//# sourceMappingURL=mocha-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mocha-adapter.js","sourceRoot":"","sources":["../../src/adapters/mocha-adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ModestBench Mocha Adapter
|
|
3
|
+
*
|
|
4
|
+
* Captures test definitions from Mocha test files by replacing global
|
|
5
|
+
* `describe`, `it`, and hook functions before the test file loads.
|
|
6
|
+
*
|
|
7
|
+
* Mocha exposes these as globals, making interception straightforward - no ES
|
|
8
|
+
* module loader hooks required.
|
|
9
|
+
*/
|
|
10
|
+
import type { CapturedTestFile, TestFrameworkAdapter } from "./types.cjs";
|
|
11
|
+
/**
|
|
12
|
+
* Mocha test framework adapter
|
|
13
|
+
*
|
|
14
|
+
* Captures tests by installing global mocks before importing the test file.
|
|
15
|
+
*/
|
|
16
|
+
export declare class MochaAdapter implements TestFrameworkAdapter {
|
|
17
|
+
readonly framework: "mocha";
|
|
18
|
+
/**
|
|
19
|
+
* Capture test definitions from a Mocha test file
|
|
20
|
+
*
|
|
21
|
+
* @param filePath - Absolute path to the test file
|
|
22
|
+
* @returns Captured test structure
|
|
23
|
+
*/
|
|
24
|
+
capture(filePath: string): Promise<CapturedTestFile>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=mocha-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mocha-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/mocha-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAGV,gBAAgB,EAEhB,oBAAoB,EACrB,oBAAmB;AAqCpB;;;;GAIG;AACH,qBAAa,YAAa,YAAW,oBAAoB;IACvD,QAAQ,CAAC,SAAS,EAAG,OAAO,CAAU;IAEtC;;;;;OAKG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAyB3D"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ModestBench Mocha Adapter
|
|
3
|
+
*
|
|
4
|
+
* Captures test definitions from Mocha test files by replacing global
|
|
5
|
+
* `describe`, `it`, and hook functions before the test file loads.
|
|
6
|
+
*
|
|
7
|
+
* Mocha exposes these as globals, making interception straightforward - no ES
|
|
8
|
+
* module loader hooks required.
|
|
9
|
+
*/
|
|
10
|
+
import type { CapturedTestFile, TestFrameworkAdapter } from "./types.js";
|
|
11
|
+
/**
|
|
12
|
+
* Mocha test framework adapter
|
|
13
|
+
*
|
|
14
|
+
* Captures tests by installing global mocks before importing the test file.
|
|
15
|
+
*/
|
|
16
|
+
export declare class MochaAdapter implements TestFrameworkAdapter {
|
|
17
|
+
readonly framework: "mocha";
|
|
18
|
+
/**
|
|
19
|
+
* Capture test definitions from a Mocha test file
|
|
20
|
+
*
|
|
21
|
+
* @param filePath - Absolute path to the test file
|
|
22
|
+
* @returns Captured test structure
|
|
23
|
+
*/
|
|
24
|
+
capture(filePath: string): Promise<CapturedTestFile>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=mocha-adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mocha-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/mocha-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAGV,gBAAgB,EAEhB,oBAAoB,EACrB,mBAAmB;AAqCpB;;;;GAIG;AACH,qBAAa,YAAa,YAAW,oBAAoB;IACvD,QAAQ,CAAC,SAAS,EAAG,OAAO,CAAU;IAEtC;;;;;OAKG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAyB3D"}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ModestBench Mocha Adapter
|
|
3
|
+
*
|
|
4
|
+
* Captures test definitions from Mocha test files by replacing global
|
|
5
|
+
* `describe`, `it`, and hook functions before the test file loads.
|
|
6
|
+
*
|
|
7
|
+
* Mocha exposes these as globals, making interception straightforward - no ES
|
|
8
|
+
* module loader hooks required.
|
|
9
|
+
*/
|
|
10
|
+
var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
|
|
11
|
+
if (typeof path === "string" && /^\.\.?\//.test(path)) {
|
|
12
|
+
return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
|
|
13
|
+
return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
return path;
|
|
17
|
+
};
|
|
18
|
+
import { pathToFileURL } from 'node:url';
|
|
19
|
+
/**
|
|
20
|
+
* Mocha test framework adapter
|
|
21
|
+
*
|
|
22
|
+
* Captures tests by installing global mocks before importing the test file.
|
|
23
|
+
*/
|
|
24
|
+
export class MochaAdapter {
|
|
25
|
+
framework = 'mocha';
|
|
26
|
+
/**
|
|
27
|
+
* Capture test definitions from a Mocha test file
|
|
28
|
+
*
|
|
29
|
+
* @param filePath - Absolute path to the test file
|
|
30
|
+
* @returns Captured test structure
|
|
31
|
+
*/
|
|
32
|
+
async capture(filePath) {
|
|
33
|
+
// Install our mock globals
|
|
34
|
+
const state = installMochaGlobals();
|
|
35
|
+
try {
|
|
36
|
+
// Import the test file - this triggers describe/it calls
|
|
37
|
+
// which populate our state
|
|
38
|
+
const fileUrl = pathToFileURL(filePath).href;
|
|
39
|
+
// Use a cache-busting query param to ensure fresh import
|
|
40
|
+
const bustCache = `?t=${Date.now()}`;
|
|
41
|
+
await import(__rewriteRelativeImportExtension(fileUrl + bustCache));
|
|
42
|
+
// Return captured structure
|
|
43
|
+
return {
|
|
44
|
+
filePath,
|
|
45
|
+
framework: 'mocha',
|
|
46
|
+
rootSuites: state.rootSuites,
|
|
47
|
+
rootTests: state.rootTests,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
finally {
|
|
51
|
+
// Clean up globals
|
|
52
|
+
uninstallMochaGlobals();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Create empty hooks structure
|
|
58
|
+
*/
|
|
59
|
+
const createEmptyHooks = () => {
|
|
60
|
+
return {
|
|
61
|
+
after: [],
|
|
62
|
+
afterEach: [],
|
|
63
|
+
before: [],
|
|
64
|
+
beforeEach: [],
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Create a new suite structure
|
|
69
|
+
*/
|
|
70
|
+
const createSuite = (name) => {
|
|
71
|
+
return {
|
|
72
|
+
children: [],
|
|
73
|
+
hooks: createEmptyHooks(),
|
|
74
|
+
name,
|
|
75
|
+
tests: [],
|
|
76
|
+
};
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Install Mocha global mocks and return the capture state
|
|
80
|
+
*
|
|
81
|
+
* This replaces globalThis.describe, globalThis.it, etc. with our capturing
|
|
82
|
+
* implementations.
|
|
83
|
+
*/
|
|
84
|
+
const installMochaGlobals = () => {
|
|
85
|
+
const state = {
|
|
86
|
+
currentSuite: null,
|
|
87
|
+
rootSuites: [],
|
|
88
|
+
rootTests: [],
|
|
89
|
+
};
|
|
90
|
+
// describe() - creates a suite
|
|
91
|
+
const describe = (name, fn) => {
|
|
92
|
+
const suite = createSuite(name);
|
|
93
|
+
const parent = state.currentSuite;
|
|
94
|
+
if (parent) {
|
|
95
|
+
// Nested describe: inherit beforeEach/afterEach from parent
|
|
96
|
+
// and add to parent's children
|
|
97
|
+
parent.children.push(suite);
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// Root-level describe
|
|
101
|
+
state.rootSuites.push(suite);
|
|
102
|
+
}
|
|
103
|
+
// Enter this suite context
|
|
104
|
+
state.currentSuite = suite;
|
|
105
|
+
// Execute the describe body to capture tests and nested describes
|
|
106
|
+
fn();
|
|
107
|
+
// Exit back to parent context
|
|
108
|
+
state.currentSuite = parent;
|
|
109
|
+
};
|
|
110
|
+
// describe.only() - marks suite as exclusive
|
|
111
|
+
describe.only = (name, fn) => {
|
|
112
|
+
// For benchmarking, we treat .only the same as regular
|
|
113
|
+
// (filtering happens at a higher level)
|
|
114
|
+
describe(name, fn);
|
|
115
|
+
};
|
|
116
|
+
// describe.skip() - marks suite as skipped
|
|
117
|
+
describe.skip = (_name, _fn) => {
|
|
118
|
+
// Skip entirely - don't even register
|
|
119
|
+
};
|
|
120
|
+
// it() - creates a test
|
|
121
|
+
const it = (name, fn) => {
|
|
122
|
+
const test = { fn, name };
|
|
123
|
+
if (state.currentSuite) {
|
|
124
|
+
state.currentSuite.tests.push(test);
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
// Root-level test (unusual for Mocha but supported)
|
|
128
|
+
state.rootTests.push(test);
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
// it.only() - marks test as exclusive
|
|
132
|
+
it.only = (name, fn) => {
|
|
133
|
+
const test = { fn, name, only: true };
|
|
134
|
+
if (state.currentSuite) {
|
|
135
|
+
state.currentSuite.tests.push(test);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
state.rootTests.push(test);
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
// it.skip() - marks test as skipped
|
|
142
|
+
it.skip = (name, fn) => {
|
|
143
|
+
const test = { fn, name, skip: true };
|
|
144
|
+
if (state.currentSuite) {
|
|
145
|
+
state.currentSuite.tests.push(test);
|
|
146
|
+
}
|
|
147
|
+
else {
|
|
148
|
+
state.rootTests.push(test);
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
// before() - runs once before all tests in suite
|
|
152
|
+
const before = (fn) => {
|
|
153
|
+
if (state.currentSuite) {
|
|
154
|
+
state.currentSuite.hooks.before.push(fn);
|
|
155
|
+
}
|
|
156
|
+
// Root-level before is ignored (no suite to attach to)
|
|
157
|
+
};
|
|
158
|
+
// after() - runs once after all tests in suite
|
|
159
|
+
const after = (fn) => {
|
|
160
|
+
if (state.currentSuite) {
|
|
161
|
+
state.currentSuite.hooks.after.push(fn);
|
|
162
|
+
}
|
|
163
|
+
};
|
|
164
|
+
// beforeEach() - runs before each test
|
|
165
|
+
const beforeEach = (fn) => {
|
|
166
|
+
if (state.currentSuite) {
|
|
167
|
+
state.currentSuite.hooks.beforeEach.push(fn);
|
|
168
|
+
}
|
|
169
|
+
};
|
|
170
|
+
// afterEach() - runs after each test
|
|
171
|
+
const afterEach = (fn) => {
|
|
172
|
+
if (state.currentSuite) {
|
|
173
|
+
state.currentSuite.hooks.afterEach.push(fn);
|
|
174
|
+
}
|
|
175
|
+
};
|
|
176
|
+
// Install globals
|
|
177
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
178
|
+
globalThis.describe = describe;
|
|
179
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
180
|
+
globalThis.it = it;
|
|
181
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
182
|
+
globalThis.before = before;
|
|
183
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
184
|
+
globalThis.after = after;
|
|
185
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
186
|
+
globalThis.beforeEach = beforeEach;
|
|
187
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
188
|
+
globalThis.afterEach = afterEach;
|
|
189
|
+
// Mocha aliases
|
|
190
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
191
|
+
globalThis.context = describe;
|
|
192
|
+
// @ts-expect-error - intentionally modifying globalThis
|
|
193
|
+
globalThis.specify = it;
|
|
194
|
+
return state;
|
|
195
|
+
};
|
|
196
|
+
/**
|
|
197
|
+
* Remove Mocha globals installed by installMochaGlobals
|
|
198
|
+
*/
|
|
199
|
+
const uninstallMochaGlobals = () => {
|
|
200
|
+
// @ts-expect-error - cleaning up globalThis
|
|
201
|
+
delete globalThis.describe;
|
|
202
|
+
// @ts-expect-error - cleaning up globalThis
|
|
203
|
+
delete globalThis.it;
|
|
204
|
+
// @ts-expect-error - cleaning up globalThis
|
|
205
|
+
delete globalThis.before;
|
|
206
|
+
// @ts-expect-error - cleaning up globalThis
|
|
207
|
+
delete globalThis.after;
|
|
208
|
+
// @ts-expect-error - cleaning up globalThis
|
|
209
|
+
delete globalThis.beforeEach;
|
|
210
|
+
// @ts-expect-error - cleaning up globalThis
|
|
211
|
+
delete globalThis.afterEach;
|
|
212
|
+
// @ts-expect-error - cleaning up globalThis
|
|
213
|
+
delete globalThis.context;
|
|
214
|
+
// @ts-expect-error - cleaning up globalThis
|
|
215
|
+
delete globalThis.specify;
|
|
216
|
+
};
|
|
217
|
+
//# sourceMappingURL=mocha-adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mocha-adapter.js","sourceRoot":"","sources":["../../src/adapters/mocha-adapter.ts"],"names":[],"mappings":"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"}
|