mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
chore: upgrade to Mocha v8 (#5997)
* chore: upgrade to Mocha v8 Mocha v8 has some nice improvements and also unlocks the potential to have parallel test runs which may speed up CI.
This commit is contained in:
@@ -102,16 +102,17 @@ const trackCoverage = () => {
|
||||
clearOldCoverage();
|
||||
const coverageMap = new Map();
|
||||
|
||||
before(() => {
|
||||
const api = require('../lib/api');
|
||||
const events = require('../lib/common/Events');
|
||||
for (const [className, classType] of Object.entries(api))
|
||||
traceAPICoverage(coverageMap, events, className, classType);
|
||||
});
|
||||
|
||||
after(() => {
|
||||
writeCoverage(coverageMap);
|
||||
});
|
||||
return {
|
||||
beforeAll: () => {
|
||||
const api = require('../lib/api');
|
||||
const events = require('../lib/common/Events');
|
||||
for (const [className, classType] of Object.entries(api))
|
||||
traceAPICoverage(coverageMap, events, className, classType);
|
||||
},
|
||||
afterAll: () => {
|
||||
writeCoverage(coverageMap);
|
||||
},
|
||||
};
|
||||
};
|
||||
|
||||
module.exports = {
|
||||
|
||||
@@ -140,7 +140,14 @@ global.describeChromeOnly = (...args) => {
|
||||
if (isChrome) return describe(...args);
|
||||
};
|
||||
|
||||
if (process.env.COVERAGE) trackCoverage();
|
||||
let coverageHooks = {
|
||||
beforeAll: () => {},
|
||||
afterAll: () => {},
|
||||
};
|
||||
|
||||
if (process.env.COVERAGE) {
|
||||
coverageHooks = trackCoverage();
|
||||
}
|
||||
|
||||
console.log(
|
||||
`Running unit tests with:
|
||||
@@ -176,31 +183,39 @@ exports.setupTestPageAndContextHooks = () => {
|
||||
});
|
||||
};
|
||||
|
||||
before(async () => {
|
||||
const { server, httpsServer } = await setupServer();
|
||||
exports.mochaHooks = {
|
||||
beforeAll: [
|
||||
async () => {
|
||||
const { server, httpsServer } = await setupServer();
|
||||
|
||||
state.puppeteer = puppeteer;
|
||||
state.defaultBrowserOptions = defaultBrowserOptions;
|
||||
state.server = server;
|
||||
state.httpsServer = httpsServer;
|
||||
state.isFirefox = isFirefox;
|
||||
state.isChrome = isChrome;
|
||||
state.isHeadless = isHeadless;
|
||||
state.puppeteerPath = path.resolve(path.join(__dirname, '..'));
|
||||
});
|
||||
state.puppeteer = puppeteer;
|
||||
state.defaultBrowserOptions = defaultBrowserOptions;
|
||||
state.server = server;
|
||||
state.httpsServer = httpsServer;
|
||||
state.isFirefox = isFirefox;
|
||||
state.isChrome = isChrome;
|
||||
state.isHeadless = isHeadless;
|
||||
state.puppeteerPath = path.resolve(path.join(__dirname, '..'));
|
||||
},
|
||||
coverageHooks.beforeAll,
|
||||
],
|
||||
|
||||
beforeEach(async () => {
|
||||
state.server.reset();
|
||||
state.httpsServer.reset();
|
||||
});
|
||||
beforeEach: async () => {
|
||||
state.server.reset();
|
||||
state.httpsServer.reset();
|
||||
},
|
||||
|
||||
after(async () => {
|
||||
await state.server.stop();
|
||||
state.server = null;
|
||||
await state.httpsServer.stop();
|
||||
state.httpsServer = null;
|
||||
});
|
||||
afterAll: [
|
||||
async () => {
|
||||
await state.server.stop();
|
||||
state.server = null;
|
||||
await state.httpsServer.stop();
|
||||
state.httpsServer = null;
|
||||
},
|
||||
coverageHooks.afterAll,
|
||||
],
|
||||
|
||||
afterEach(() => {
|
||||
sinon.restore();
|
||||
});
|
||||
afterEach: () => {
|
||||
sinon.restore();
|
||||
},
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user