node/lib/test.js
cjihrig 7c6682957b
test_runner: support function mocking
This commit allows tests in the test runner to mock functions
and methods.

PR-URL: https://github.com/nodejs/node/pull/45326
Reviewed-By: Moshe Atlow <moshe@atlow.co.il>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
2022-11-07 18:25:54 -05:00

34 lines
688 B
JavaScript

'use strict';
const { ObjectAssign, ObjectDefineProperty } = primordials;
const { test, describe, it, before, after, beforeEach, afterEach } = require('internal/test_runner/harness');
const { run } = require('internal/test_runner/runner');
module.exports = test;
ObjectAssign(module.exports, {
after,
afterEach,
before,
beforeEach,
describe,
it,
run,
test,
});
let lazyMock;
ObjectDefineProperty(module.exports, 'mock', {
__proto__: null,
configurable: true,
enumerable: true,
get() {
if (lazyMock === undefined) {
const { MockTracker } = require('internal/test_runner/mock');
lazyMock = new MockTracker();
}
return lazyMock;
},
});