Index: third_party/WebKit/LayoutTests/inspector-protocol/resources/inspector-protocol-test.js |
diff --git a/third_party/WebKit/LayoutTests/inspector-protocol/resources/inspector-protocol-test.js b/third_party/WebKit/LayoutTests/inspector-protocol/resources/inspector-protocol-test.js |
index 3c5c850559d06d7bfa813e942d9414f63222a412..d1e2e155b1b24b0ca1603f21436d45271a45fe0e 100644 |
--- a/third_party/WebKit/LayoutTests/inspector-protocol/resources/inspector-protocol-test.js |
+++ b/third_party/WebKit/LayoutTests/inspector-protocol/resources/inspector-protocol-test.js |
@@ -167,9 +167,9 @@ TestRunner.Page = class { |
} |
async createSession() { |
- await DevToolsAPI._sendCommandOrDie('Target.attachToTarget', {targetId: this._targetId}); |
- var session = new TestRunner.Session(this); |
- DevToolsAPI._sessions.set(this._targetId, session); |
+ var sessionId = (await DevToolsAPI._sendCommandOrDie('Target.attachToTarget', {targetId: this._targetId})).sessionId; |
+ var session = new TestRunner.Session(this, sessionId); |
+ DevToolsAPI._sessions.set(sessionId, session); |
return session; |
} |
@@ -178,9 +178,6 @@ TestRunner.Page = class { |
} |
async _navigate(url) { |
- if (DevToolsAPI._sessions.get(this._targetId)) |
- this._testRunner.die(`Cannot navigate to ${url} with active session`, new Error()); |
- |
var session = await this.createSession(); |
session.protocol.Page.enable(); |
session.protocol.Page.navigate({url: url}); |
@@ -197,9 +194,6 @@ TestRunner.Page = class { |
} |
async loadHTML(html) { |
- if (DevToolsAPI._sessions.get(this._targetId)) |
- this._testRunner.die('Cannot loadHTML with active session', new Error()); |
- |
html = html.replace(/'/g, "\\'").replace(/\n/g, '\\n'); |
var session = await this.createSession(); |
await session.protocol.Runtime.evaluate({expression: `document.body.innerHTML='${html}'`}); |
@@ -208,9 +202,10 @@ TestRunner.Page = class { |
}; |
TestRunner.Session = class { |
- constructor(page) { |
+ constructor(page, sessionId) { |
this._testRunner = page._testRunner; |
this._page = page; |
+ this._sessionId = sessionId; |
this._requestId = 0; |
this._dispatchTable = new Map(); |
this._eventHandlers = new Map(); |
@@ -218,12 +213,12 @@ TestRunner.Session = class { |
} |
async disconnect() { |
- await DevToolsAPI._sendCommandOrDie('Target.detachFromTarget', {targetId: this._page._targetId}); |
- DevToolsAPI._sessions.delete(this._page._targetId); |
+ await DevToolsAPI._sendCommandOrDie('Target.detachFromTarget', {sessionId: this._sessionId}); |
+ DevToolsAPI._sessions.delete(this._sessionId); |
} |
sendRawCommand(requestId, message) { |
- DevToolsAPI._sendCommandOrDie('Target.sendMessageToTarget', {targetId: this._page._targetId, message: message}); |
+ DevToolsAPI._sendCommandOrDie('Target.sendMessageToTarget', {sessionId: this._sessionId, message: message}); |
return new Promise(f => this._dispatchTable.set(requestId, f)); |
} |
@@ -361,9 +356,9 @@ DevToolsAPI.dispatchMessage = function(messageOrObject) { |
} else { |
var eventName = messageObject.method; |
if (eventName === 'Target.receivedMessageFromTarget') { |
- var targetId = messageObject.params.targetId; |
+ var sessionId = messageObject.params.sessionId; |
var message = messageObject.params.message; |
- var session = DevToolsAPI._sessions.get(targetId); |
+ var session = DevToolsAPI._sessions.get(sessionId); |
if (session) |
session._dispatchMessage(JSON.parse(message)); |
} |