forked from mirrors/gecko-dev
45 lines
1.4 KiB
JavaScript
45 lines
1.4 KiB
JavaScript
/**
|
|
* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/
|
|
*/
|
|
|
|
const TEST_PAGE =
|
|
"https://example.com/browser/browser/base/content/test/permissions/empty.html";
|
|
|
|
add_task(async function testNoPermissionPrompt() {
|
|
info("Creating tab");
|
|
await BrowserTestUtils.withNewTab(TEST_PAGE, async function (browser) {
|
|
await new Promise(r => {
|
|
SpecialPowers.pushPrefEnv(
|
|
{
|
|
set: [
|
|
["dom.vibrator.enabled", true],
|
|
["dom.security.featurePolicy.header.enabled", true],
|
|
["dom.security.featurePolicy.webidl.enabled", true],
|
|
],
|
|
},
|
|
r
|
|
);
|
|
});
|
|
|
|
await ContentTask.spawn(browser, null, async function () {
|
|
let frame = content.document.createElement("iframe");
|
|
// Cross origin src
|
|
frame.src =
|
|
"https://example.org/browser/browser/base/content/test/permissions/empty.html";
|
|
await new Promise(resolve => {
|
|
frame.addEventListener("load", () => {
|
|
resolve();
|
|
});
|
|
content.document.body.appendChild(frame);
|
|
});
|
|
|
|
await content.SpecialPowers.spawn(frame, [], async function () {
|
|
// Request a permission.
|
|
let result = this.content.navigator.vibrate([100, 100]);
|
|
Assert.equal(result, false, "navigator.vibrate has been denied");
|
|
});
|
|
content.document.body.removeChild(frame);
|
|
});
|
|
});
|
|
});
|