feat: add <webview> 'did-redirect-navigation' event (#30457)
This commit is contained in:
parent
34f1bc0e82
commit
aad1c0d493
3 changed files with 53 additions and 0 deletions
|
@ -564,6 +564,45 @@ describe('<webview> tag', function () {
|
|||
});
|
||||
});
|
||||
|
||||
describe('did-redirect-navigation event', () => {
|
||||
let server = null;
|
||||
let uri = null;
|
||||
|
||||
before((done) => {
|
||||
server = http.createServer((req, res) => {
|
||||
if (req.url === '/302') {
|
||||
res.setHeader('Location', '/200');
|
||||
res.statusCode = 302;
|
||||
res.end();
|
||||
} else {
|
||||
res.end();
|
||||
}
|
||||
});
|
||||
server.listen(0, '127.0.0.1', () => {
|
||||
uri = `http://127.0.0.1:${(server.address()).port}`;
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
after(() => {
|
||||
server.close();
|
||||
});
|
||||
|
||||
it('is emitted on redirects', async () => {
|
||||
loadWebView(webview, {
|
||||
src: `${uri}/302`
|
||||
});
|
||||
|
||||
const event = await waitForEvent(webview, 'did-redirect-navigation');
|
||||
|
||||
expect(event.url).to.equal(`${uri}/200`);
|
||||
expect(event.isInPlace).to.be.false();
|
||||
expect(event.isMainFrame).to.be.true();
|
||||
expect(event.frameProcessId).to.be.a('number');
|
||||
expect(event.frameRoutingId).to.be.a('number');
|
||||
});
|
||||
});
|
||||
|
||||
describe('will-navigate event', () => {
|
||||
it('emits when a url that leads to oustide of the page is clicked', async () => {
|
||||
loadWebView(webview, {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue