fix(firefox): roll firefox for postdata fix (#3196)

This commit is contained in:
Dmitry Gozman 2020-07-28 18:47:25 -07:00 committed by GitHub
parent fab5eba64f
commit bdfde5cd5c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 12 deletions

View file

@ -8,7 +8,7 @@
}, },
{ {
"name": "firefox", "name": "firefox",
"revision": "1140", "revision": "1144",
"download": true "download": true
}, },
{ {

View file

@ -534,7 +534,7 @@ describe('Request.continue', function() {
]); ]);
expect((await serverRequest.postBody).toString('utf8')).toBe('doggo'); expect((await serverRequest.postBody).toString('utf8')).toBe('doggo');
}); });
it.fail(FFOX)('should amend utf8 post data', async({page, server}) => { it('should amend utf8 post data', async({page, server}) => {
await page.goto(server.EMPTY_PAGE); await page.goto(server.EMPTY_PAGE);
await page.route('**/*', route => { await page.route('**/*', route => {
route.continue({ postData: 'пушкин' }); route.continue({ postData: 'пушкин' });
@ -543,9 +543,10 @@ describe('Request.continue', function() {
server.waitForRequest('/sleep.zzz'), server.waitForRequest('/sleep.zzz'),
page.evaluate(() => fetch('/sleep.zzz', { method: 'POST', body: 'birdy' })) page.evaluate(() => fetch('/sleep.zzz', { method: 'POST', body: 'birdy' }))
]); ]);
expect(serverRequest.method).toBe('POST');
expect((await serverRequest.postBody).toString('utf8')).toBe('пушкин'); expect((await serverRequest.postBody).toString('utf8')).toBe('пушкин');
}); });
it.fail(FFOX)('should amend longer post data', async({page, server}) => { it('should amend longer post data', async({page, server}) => {
await page.goto(server.EMPTY_PAGE); await page.goto(server.EMPTY_PAGE);
await page.route('**/*', route => { await page.route('**/*', route => {
route.continue({ postData: 'doggo-is-longer-than-birdy' }); route.continue({ postData: 'doggo-is-longer-than-birdy' });
@ -554,9 +555,10 @@ describe('Request.continue', function() {
server.waitForRequest('/sleep.zzz'), server.waitForRequest('/sleep.zzz'),
page.evaluate(() => fetch('/sleep.zzz', { method: 'POST', body: 'birdy' })) page.evaluate(() => fetch('/sleep.zzz', { method: 'POST', body: 'birdy' }))
]); ]);
expect(serverRequest.method).toBe('POST');
expect((await serverRequest.postBody).toString('utf8')).toBe('doggo-is-longer-than-birdy'); expect((await serverRequest.postBody).toString('utf8')).toBe('doggo-is-longer-than-birdy');
}); });
it.fail(FFOX)('should amend binary post data', async({page, server}) => { it('should amend binary post data', async({page, server}) => {
await page.goto(server.EMPTY_PAGE); await page.goto(server.EMPTY_PAGE);
const arr = Array.from(Array(256).keys()); const arr = Array.from(Array(256).keys());
await page.route('**/*', route => { await page.route('**/*', route => {
@ -566,6 +568,7 @@ describe('Request.continue', function() {
server.waitForRequest('/sleep.zzz'), server.waitForRequest('/sleep.zzz'),
page.evaluate(() => fetch('/sleep.zzz', { method: 'POST', body: 'birdy' })) page.evaluate(() => fetch('/sleep.zzz', { method: 'POST', body: 'birdy' }))
]); ]);
expect(serverRequest.method).toBe('POST');
const buffer = await serverRequest.postBody; const buffer = await serverRequest.postBody;
expect(buffer.length).toBe(arr.length); expect(buffer.length).toBe(arr.length);
for (let i = 0; i < arr.length; ++i) for (let i = 0; i < arr.length; ++i)

View file

@ -199,7 +199,7 @@ class TestServer {
request.on('end', () => resolve(body)); request.on('end', () => resolve(body));
}); });
const pathName = url.parse(request.url).path; const pathName = url.parse(request.url).path;
this.debugServer(`request ${pathName}`); this.debugServer(`request ${request.method} ${pathName}`);
if (this._auths.has(pathName)) { if (this._auths.has(pathName)) {
const auth = this._auths.get(pathName); const auth = this._auths.get(pathName);
const credentials = Buffer.from((request.headers.authorization || '').split(' ')[1] || '', 'base64').toString(); const credentials = Buffer.from((request.headers.authorization || '').split(' ')[1] || '', 'base64').toString();