Skip to content

Commit 7981e4e

Browse files
authored
fix: support event source type in firefox (#2390)
References #2189
1 parent 2b21a5f commit 7981e4e

File tree

4 files changed

+8
-4
lines changed

4 files changed

+8
-4
lines changed

browsers.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
},
77
{
88
"name": "firefox",
9-
"revision": "1097"
9+
"revision": "1098"
1010
},
1111
{
1212
"name": "webkit",

src/firefox/ffNetworkManager.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,10 @@ const causeToResourceType: {[key: string]: string} = {
137137
TYPE_WEB_MANIFEST: 'manifest',
138138
};
139139

140+
const internalCauseToResourceType: {[key: string]: string} = {
141+
TYPE_INTERNAL_EVENTSOURCE: 'eventsource',
142+
};
143+
140144
class InterceptableRequest implements network.RouteDelegate {
141145
readonly request: network.Request;
142146
_id: string;
@@ -151,7 +155,7 @@ class InterceptableRequest implements network.RouteDelegate {
151155
headers[name.toLowerCase()] = value;
152156

153157
this.request = new network.Request(payload.isIntercepted ? this : null, frame, redirectedFrom ? redirectedFrom.request : null, payload.navigationId,
154-
payload.url, causeToResourceType[payload.cause] || 'other', payload.method, payload.postData || null, headers);
158+
payload.url, internalCauseToResourceType[payload.internalCause] || causeToResourceType[payload.cause] || 'other', payload.method, payload.postData || null, headers);
155159
}
156160

157161
async continue(overrides: { method?: string; headers?: network.Headers; postData?: string }) {

src/webkit/wkInterceptableRequest.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export class WKInterceptableRequest implements network.RouteDelegate {
4949
constructor(session: WKSession, allowInterception: boolean, frame: frames.Frame, event: Protocol.Network.requestWillBeSentPayload, redirectedFrom: network.Request | null, documentId: string | undefined) {
5050
this._session = session;
5151
this._requestId = event.requestId;
52-
const resourceType = event.type ? event.type.toLowerCase() : (redirectedFrom ? redirectedFrom.resourceType() : 'unknown');
52+
const resourceType = event.type ? event.type.toLowerCase() : (redirectedFrom ? redirectedFrom.resourceType() : 'other');
5353
this.request = new network.Request(allowInterception ? this : null, frame, redirectedFrom, documentId, event.request.url,
5454
resourceType, event.request.method, event.request.postData || null, headersObject(event.request.headers));
5555
this._interceptedPromise = new Promise(f => this._interceptedCallback = f);

test/network.spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@ describe('Response.statusText', function() {
260260
});
261261

262262
describe('Request.resourceType', function() {
263-
it.fail(FFOX || WEBKIT)('should return event source', async ({page, server}) => {
263+
it.fail(WEBKIT)('should return event source', async ({page, server}) => {
264264
const SSE_MESSAGE = {foo: 'bar'};
265265
// 1. Setup server-sent events on server that immediately sends a message to the client.
266266
server.setRoute('/sse', (req, res) => {

0 commit comments

Comments
 (0)