mirror of
https://github.com/microsoft/playwright.git
synced 2024-10-27 05:46:28 +03:00
test: speculative fix for redirect event order (#8602)
This commit is contained in:
parent
0f34cfe339
commit
ae3a4f5257
@ -92,23 +92,23 @@ it('should fire events in proper order', async ({page, server}) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should support redirects', async ({page, server}) => {
|
it('should support redirects', async ({page, server}) => {
|
||||||
const events = [];
|
|
||||||
page.on('request', request => events.push(`${request.method()} ${request.url()}`));
|
|
||||||
page.on('response', response => events.push(`${response.status()} ${response.url()}`));
|
|
||||||
page.on('requestfinished', request => events.push(`DONE ${request.url()}`));
|
|
||||||
page.on('requestfailed', request => events.push(`FAIL ${request.url()}`));
|
|
||||||
server.setRedirect('/foo.html', '/empty.html');
|
|
||||||
const FOO_URL = server.PREFIX + '/foo.html';
|
const FOO_URL = server.PREFIX + '/foo.html';
|
||||||
|
const events = {};
|
||||||
|
events[server.EMPTY_PAGE] = [];
|
||||||
|
events[FOO_URL] = [];
|
||||||
|
page.on('request', request => events[request.url()].push(request.method()));
|
||||||
|
page.on('response', response => events[response.url()].push(response.status()));
|
||||||
|
page.on('requestfinished', request => events[request.url()].push('DONE'));
|
||||||
|
page.on('requestfailed', request => events[request.url()].push('FAIL'));
|
||||||
|
|
||||||
|
server.setRedirect('/foo.html', '/empty.html');
|
||||||
const response = await page.goto(FOO_URL);
|
const response = await page.goto(FOO_URL);
|
||||||
await response.finished();
|
await response.finished();
|
||||||
expect(events).toEqual([
|
|
||||||
`GET ${FOO_URL}`,
|
const expected = {};
|
||||||
`302 ${FOO_URL}`,
|
expected[FOO_URL] = ['GET', 302, 'DONE'];
|
||||||
`DONE ${FOO_URL}`,
|
expected[server.EMPTY_PAGE] = ['GET', 200, 'DONE'];
|
||||||
`GET ${server.EMPTY_PAGE}`,
|
expect(events).toEqual(expected);
|
||||||
`200 ${server.EMPTY_PAGE}`,
|
|
||||||
`DONE ${server.EMPTY_PAGE}`
|
|
||||||
]);
|
|
||||||
const redirectedFrom = response.request().redirectedFrom();
|
const redirectedFrom = response.request().redirectedFrom();
|
||||||
expect(redirectedFrom.url()).toContain('/foo.html');
|
expect(redirectedFrom.url()).toContain('/foo.html');
|
||||||
expect(redirectedFrom.redirectedFrom()).toBe(null);
|
expect(redirectedFrom.redirectedFrom()).toBe(null);
|
||||||
|
Loading…
Reference in New Issue
Block a user