Skip to content

Commit

Permalink
feat(firefox): support consoleMessage.location() (#4002)
Browse files Browse the repository at this point in the history
  • Loading branch information
aslushnikov committed Feb 14, 2019
1 parent 2275c3c commit e3b76b2
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 9 deletions.
4 changes: 2 additions & 2 deletions docs/api.md
Expand Up @@ -2344,8 +2344,8 @@ puppeteer.launch().then(async browser => {
#### consoleMessage.location()
- returns: <[Object]>
- `url` <[string]> URL of the resource if known or `undefined` otherwise.
- `lineNumber` <[number]> line number in the resource if known or `undefined` otherwise.
- `columnNumber` <[number]> column number in the resource if known or `undefined` otherwise.
- `lineNumber` <[number]> 0-based line number in the resource if known or `undefined` otherwise.
- `columnNumber` <[number]> 0-based column number in the resource if known or `undefined` otherwise.

#### consoleMessage.text()
- returns: <[string]>
Expand Down
11 changes: 8 additions & 3 deletions experimental/puppeteer-firefox/lib/Page.js
Expand Up @@ -571,9 +571,9 @@ class Page extends EventEmitter {
this.emit(Events.Page.Close);
}

_onConsole({type, args, frameId}) {
_onConsole({type, args, frameId, location}) {
const frame = this._frameManager.frame(frameId);
this.emit(Events.Page.Console, new ConsoleMessage(type, args.map(arg => createHandle(frame._executionContext, arg))));
this.emit(Events.Page.Console, new ConsoleMessage(type, args.map(arg => createHandle(frame._executionContext, arg)), location));
}

/**
Expand All @@ -589,9 +589,14 @@ class ConsoleMessage {
* @param {string} type
* @param {!Array<!JSHandle>} args
*/
constructor(type, args) {
constructor(type, args, location) {
this._type = type;
this._args = args;
this._location = location;
}

location() {
return this._location;
}

/**
Expand Down
2 changes: 1 addition & 1 deletion experimental/puppeteer-firefox/package.json
Expand Up @@ -9,7 +9,7 @@
"node": ">=8.9.4"
},
"puppeteer": {
"firefox_revision": "6186c850885f1fa486e9987b5119d2b4bcb53499"
"firefox_revision": "0647e24cc0b90c07c8ddb32e63ce333839329527"
},
"scripts": {
"install": "node install.js",
Expand Down
6 changes: 3 additions & 3 deletions test/page.spec.js
Expand Up @@ -25,7 +25,7 @@ try {
asyncawait = false;
}

module.exports.addTests = function({testRunner, expect, headless, Errors, DeviceDescriptors}) {
module.exports.addTests = function({testRunner, expect, headless, Errors, DeviceDescriptors, CHROME}) {
const {describe, xdescribe, fdescribe, describe_fails_ffox} = testRunner;
const {it, fit, xit, it_fails_ffox} = testRunner;
const {beforeAll, beforeEach, afterAll, afterEach} = testRunner;
Expand Down Expand Up @@ -344,7 +344,7 @@ module.exports.addTests = function({testRunner, expect, headless, Errors, Device
lineNumber: undefined
});
});
it_fails_ffox('should have location for console API calls', async({page, server}) => {
it('should have location for console API calls', async({page, server}) => {
await page.goto(server.EMPTY_PAGE);
const [message] = await Promise.all([
waitEvent(page, 'console'),
Expand All @@ -355,7 +355,7 @@ module.exports.addTests = function({testRunner, expect, headless, Errors, Device
expect(message.location()).toEqual({
url: server.PREFIX + '/consolelog.html',
lineNumber: 7,
columnNumber: 14,
columnNumber: CHROME ? 14 : 6, // console.|log vs |console.log
});
});
// @see https://github.com/GoogleChrome/puppeteer/issues/3865
Expand Down

0 comments on commit e3b76b2

Please sign in to comment.