session: allow providing permission to handle external protocols

This commit is contained in:
deepak1556 2016-04-20 22:25:15 +05:30
parent aa29dc0c8a
commit ca756c3c24
6 changed files with 58 additions and 7 deletions

View file

@ -722,11 +722,13 @@ describe('<webview> tag', function () {
})
describe('permission-request event', function () {
function setUpRequestHandler (webview, requested_permission) {
function setUpRequestHandler (webview, requested_permission, completed) {
var listener = function (webContents, permission, callback) {
if (webContents.getId() === webview.getId()) {
assert.equal(permission, requested_permission)
callback(false)
if (completed)
completed()
}
}
session.fromPartition(webview.partition).setPermissionRequestHandler(listener)
@ -770,6 +772,13 @@ describe('<webview> tag', function () {
setUpRequestHandler(webview, 'midiSysex')
document.body.appendChild(webview)
})
it('emits when accessing external protocol', function (done) {
webview.src = 'magnet:test'
webview.partition = 'permissionTest'
setUpRequestHandler(webview, 'openExternal', done)
document.body.appendChild(webview)
})
})
describe('<webview>.getWebContents', function () {