mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
chore(tests): redirect debugError to the output category of tests (#2969)
I have seen some flaky test failures where it would be nice to have run the tests with `DEBUG=puppeteer:error`. Instead of always running tests like that, I am redirecting `debugError` to the output category of the test. This is the same thing that we do for Chromium's stderr. As a drive-by, I added an additional `debugError` where we were usually a try..finally pattern.
This commit is contained in:
committed by
Andrey Lushnikov
parent
12e3510eca
commit
c5fe1dbdbb
@@ -22,7 +22,7 @@ const GOLDEN_DIR = path.join(__dirname, 'golden');
|
||||
const OUTPUT_DIR = path.join(__dirname, 'output');
|
||||
const {TestRunner, Reporter, Matchers} = require('../utils/testrunner/');
|
||||
|
||||
const {helper, assert} = require('../lib/helper');
|
||||
const {helper, assert, debugError} = require('../lib/helper');
|
||||
if (process.env.COVERAGE)
|
||||
helper.recordPublicAPICoverage();
|
||||
|
||||
@@ -116,9 +116,16 @@ describe('Page', function() {
|
||||
const rl = require('readline').createInterface({input: state.browser.process().stderr});
|
||||
test.output = '';
|
||||
rl.on('line', onLine);
|
||||
const enableDebugError = !debugError.enabled;
|
||||
if (enableDebugError) {
|
||||
require('debug').enable(debugError.namespace);
|
||||
debugError.log = onLine;
|
||||
}
|
||||
state.tearDown = () => {
|
||||
rl.removeListener('line', onLine);
|
||||
rl.close();
|
||||
if (enableDebugError)
|
||||
debugError.log = () => undefined;
|
||||
};
|
||||
function onLine(line) {
|
||||
test.output += line + '\n';
|
||||
|
||||
Reference in New Issue
Block a user