browser_permissions_delegate_vibrate.js (1431B)
1 /** 2 * Any copyright is dedicated to the Public Domain. 3 * http://creativecommons.org/publicdomain/zero/1.0/ 4 */ 5 6 const TEST_PAGE = 7 "https://example.com/browser/browser/base/content/test/permissions/empty.html"; 8 9 add_task(async function testNoPermissionPrompt() { 10 info("Creating tab"); 11 await BrowserTestUtils.withNewTab(TEST_PAGE, async function (browser) { 12 await new Promise(r => { 13 SpecialPowers.pushPrefEnv( 14 { 15 set: [ 16 ["dom.vibrator.enabled", true], 17 ["dom.security.featurePolicy.header.enabled", true], 18 ["dom.security.featurePolicy.webidl.enabled", true], 19 ], 20 }, 21 r 22 ); 23 }); 24 25 await ContentTask.spawn(browser, null, async function () { 26 let frame = content.document.createElement("iframe"); 27 // Cross origin src 28 frame.src = 29 "https://example.org/browser/browser/base/content/test/permissions/empty.html"; 30 await new Promise(resolve => { 31 frame.addEventListener("load", () => { 32 resolve(); 33 }); 34 content.document.body.appendChild(frame); 35 }); 36 37 await content.SpecialPowers.spawn(frame, [], async function () { 38 // Request a permission. 39 let result = this.content.navigator.vibrate([100, 100]); 40 Assert.equal(result, false, "navigator.vibrate has been denied"); 41 }); 42 content.document.body.removeChild(frame); 43 }); 44 }); 45 });