Skip to content

Commit 9481251

Browse files
committed
convert report tests to mocha
1 parent 74336c5 commit 9481251

12 files changed

+35
-22
lines changed

jest.config.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ module.exports = {
1010
testEnvironment: 'node',
1111
testMatch: [
1212
'**/lighthouse-core/**/*-test.js',
13-
'**/report/**/*-test.js',
1413
'**/lighthouse-core/test/fraggle-rock/**/*-test-pptr.js',
1514
'**/treemap/**/*-test.js',
1615
'**/viewer/**/*-test.js',

lighthouse-core/test/scripts/run-tests.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ const args = [
8181
...mochaPassThruArgs,
8282
...filteredTests,
8383
];
84-
if (argv.parallel) args.push('--parallel')
84+
if (argv.parallel) args.push('--parallel');
8585
console.log(`Running command: ${argv.update ? 'SNAPSHOT_UPDATE=1 ' : ''}node ${args.join(' ')}`);
8686

8787
try {

report/test/clients/bundle-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import fs from 'fs';
88

99
import jsdom from 'jsdom';
10-
import {jest} from '@jest/globals';
10+
import jestMock from 'jest-mock';
1111

1212
import * as lighthouseRenderer from '../../clients/bundle.js';
1313
import {LH_ROOT} from '../../../root.js';
@@ -18,7 +18,7 @@ const sampleResultsStr =
1818
describe('lighthouseRenderer bundle', () => {
1919
let document;
2020
beforeAll(() => {
21-
global.console.warn = jest.fn();
21+
global.console.warn = jestMock.fn();
2222

2323
const {window} = new jsdom.JSDOM();
2424
document = window.document;

report/test/generator/report-generator-test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ const fs = require('fs');
1313
const csvValidator = require('csv-validator');
1414

1515
const ReportGenerator = require('../../generator/report-generator.js');
16-
const sampleResults = require('../../../lighthouse-core/test/results/sample_v2.json');
16+
const {readJson} = require('../../../root.js');
17+
18+
const sampleResults = readJson('lighthouse-core/test/results/sample_v2.json');
1719

1820
describe('ReportGenerator', () => {
1921
describe('#replaceStrings', () => {

report/test/renderer/category-renderer-test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ import {I18n} from '../../renderer/i18n.js';
1313
import {DOM} from '../../renderer/dom.js';
1414
import {DetailsRenderer} from '../../renderer/details-renderer.js';
1515
import {CategoryRenderer} from '../../renderer/category-renderer.js';
16-
import sampleResultsOrig from '../../../lighthouse-core/test/results/sample_v2.json';
16+
import {readJson} from '../../../root.js';
17+
18+
const sampleResultsOrig = readJson('lighthouse-core/test/results/sample_v2.json');
1719

1820
describe('CategoryRenderer', () => {
1921
let renderer;

report/test/renderer/dom-test.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
import {strict as assert} from 'assert';
88

9-
import {jest} from '@jest/globals';
9+
import jestMock from 'jest-mock';
1010
import jsdom from 'jsdom';
1111

1212
import {DOM} from '../../renderer/dom.js';
@@ -26,7 +26,7 @@ describe('DOM', () => {
2626
// The Node version of URL.createObjectURL isn't compatible with the jsdom blob type,
2727
// so we stub it.
2828
nativeCreateObjectURL = URL.createObjectURL;
29-
URL.createObjectURL = jest.fn(_ => `https://fake-origin/blahblah-blobid`);
29+
URL.createObjectURL = jestMock.fn(_ => `https://fake-origin/blahblah-blobid`);
3030

3131
dom = new DOM(window.document);
3232
dom.setLighthouseChannel('someChannel');

report/test/renderer/performance-category-renderer-test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,9 @@ import URL from '../../../lighthouse-core/lib/url-shim.js';
1414
import {DOM} from '../../renderer/dom.js';
1515
import {DetailsRenderer} from '../../renderer/details-renderer.js';
1616
import {PerformanceCategoryRenderer} from '../../renderer/performance-category-renderer.js';
17-
import sampleResultsOrig from '../../../lighthouse-core/test/results/sample_v2.json';
17+
import {readJson} from '../../../root.js';
18+
19+
const sampleResultsOrig = readJson('lighthouse-core/test/results/sample_v2.json');
1820

1921
describe('PerfCategoryRenderer', () => {
2022
let category;

report/test/renderer/pwa-category-renderer-test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,9 @@ import {I18n} from '../../renderer/i18n.js';
1313
import {DOM} from '../../renderer/dom.js';
1414
import {DetailsRenderer} from '../../renderer/details-renderer.js';
1515
import {PwaCategoryRenderer} from '../../renderer/pwa-category-renderer.js';
16-
import sampleResultsOrig from '../../../lighthouse-core/test/results/sample_v2.json';
16+
import {readJson} from '../../../root.js';
17+
18+
const sampleResultsOrig = readJson('lighthouse-core/test/results/sample_v2.json');
1719

1820
describe('PwaCategoryRenderer', () => {
1921
let category;

report/test/renderer/report-renderer-axe-test.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@
66

77
import puppeteer from 'puppeteer';
88

9-
import sampleResults from '../../../lighthouse-core/test/results/sample_v2.json';
109
import reportGenerator from '../../generator/report-generator.js';
1110
import axeLib from '../../../lighthouse-core/lib/axe.js';
11+
import {readJson} from '../../../root.js';
12+
13+
const sampleResults = readJson('lighthouse-core/test/results/sample_v2.json');
1214

1315
describe('ReportRendererAxe', () => {
1416
describe('with aXe', () => {
@@ -76,10 +78,8 @@ describe('ReportRendererAxe', () => {
7678
};
7779
});
7880
expect(axeSummary).toMatchSnapshot();
79-
},
81+
}).timeout(20_000);
8082
// This test takes 10s on fast hardware, but can take longer in CI.
8183
// https://github.com/dequelabs/axe-core/tree/b573b1c1/doc/examples/jest_react#timeout-issues
82-
/* timeout= */ 20_000
83-
);
8484
});
8585
});

report/test/renderer/report-renderer-test.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,17 @@
77
import {strict as assert} from 'assert';
88

99
import jsdom from 'jsdom';
10-
import {jest} from '@jest/globals';
10+
import jestMock from 'jest-mock';
1111

1212
import {Util} from '../../renderer/util.js';
1313
import URL from '../../../lighthouse-core/lib/url-shim.js';
1414
import {DOM} from '../../renderer/dom.js';
1515
import {DetailsRenderer} from '../../renderer/details-renderer.js';
1616
import {CategoryRenderer} from '../../renderer/category-renderer.js';
1717
import {ReportRenderer} from '../../renderer/report-renderer.js';
18-
import sampleResultsOrig from '../../../lighthouse-core/test/results/sample_v2.json';
18+
import {readJson} from '../../../root.js';
19+
20+
const sampleResultsOrig = readJson('lighthouse-core/test/results/sample_v2.json');
1921

2022
const TIMESTAMP_REGEX = /\d+, \d{4}.*\d+:\d+/;
2123

@@ -24,7 +26,7 @@ describe('ReportRenderer', () => {
2426
let sampleResults;
2527

2628
beforeAll(() => {
27-
global.console.warn = jest.fn();
29+
global.console.warn = jestMock.fn();
2830

2931
// Stub out matchMedia for Node.
3032
global.matchMedia = function() {

report/test/renderer/report-ui-features-test.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import {strict as assert} from 'assert';
88

99
import jsdom from 'jsdom';
10-
import {jest} from '@jest/globals';
10+
import jestMock from 'jest-mock';
1111

1212
import reportAssets from '../../generator/report-assets.js';
1313
import {Util} from '../../renderer/util.js';
@@ -16,7 +16,9 @@ import {DetailsRenderer} from '../../renderer/details-renderer.js';
1616
import {ReportUIFeatures} from '../../renderer/report-ui-features.js';
1717
import {CategoryRenderer} from '../../renderer/category-renderer.js';
1818
import {ReportRenderer} from '../../renderer/report-renderer.js';
19-
import sampleResultsOrig from '../../../lighthouse-core/test/results/sample_v2.json';
19+
import {readJson} from '../../../root.js';
20+
21+
const sampleResultsOrig = readJson('lighthouse-core/test/results/sample_v2.json');
2022

2123
describe('ReportUIFeatures', () => {
2224
let sampleResults;
@@ -39,7 +41,7 @@ describe('ReportUIFeatures', () => {
3941
}
4042

4143
beforeAll(() => {
42-
global.console.warn = jest.fn();
44+
global.console.warn = jestMock.fn();
4345

4446
// Stub out matchMedia for Node.
4547
global.matchMedia = function() {
@@ -281,7 +283,7 @@ describe('ReportUIFeatures', () => {
281283
const getSaveEl = () => dom.find('a[data-action="save-html"]', container);
282284
expect(getSaveEl().classList.contains('lh-hidden')).toBeTruthy();
283285

284-
const getHtmlMock = jest.fn();
286+
const getHtmlMock = jestMock.fn();
285287
container = render(sampleResults, {
286288
getStandaloneReportHTML: getHtmlMock,
287289
});

report/test/renderer/util-test.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ import {strict as assert} from 'assert';
88

99
import {Util} from '../../renderer/util.js';
1010
import {I18n} from '../../renderer/i18n.js';
11-
import sampleResult from '../../../lighthouse-core/test/results/sample_v2.json';
11+
import {readJson} from '../../../root.js';
12+
13+
const sampleResult = readJson('lighthouse-core/test/results/sample_v2.json');
1214

1315
describe('util helpers', () => {
1416
beforeEach(() => {

0 commit comments

Comments
 (0)