This is split from the previous changeset since if we include dom/ the file size is too large for phabricator to handle. This is an autogenerated commit to handle scripts loading mochitest harness files, in the simple case where the script src is on the same line as the tag. This was generated with https://bug1544322.bmoattachments.org/attachment.cgi?id=9058170 using the `--part 2` argument. Differential Revision: https://phabricator.services.mozilla.com/D27457
66 lines
2.2 KiB
HTML
66 lines
2.2 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<!--
|
|
https://bugzilla.mozilla.org/show_bug.cgi?id=916893
|
|
-->
|
|
<head>
|
|
<title>Bug 1114554 - Test ServiceWorkerGlobalScope.notificationclick event.</title>
|
|
<script src="/tests/SimpleTest/SimpleTest.js"></script>
|
|
<script type="text/javascript" src="/tests/dom/notification/test/mochitest/MockServices.js"></script>
|
|
<script type="text/javascript" src="/tests/dom/notification/test/mochitest/NotificationTest.js"></script>
|
|
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
|
|
</head>
|
|
<body>
|
|
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1114554">Bug 1114554</a>
|
|
<p id="display"></p>
|
|
<div id="content" style="display: none">
|
|
</div>
|
|
<pre id="test">
|
|
</pre>
|
|
<script src="utils.js"></script>
|
|
<script type="text/javascript">
|
|
SimpleTest.requestFlakyTimeout("Mock alert service dispatches show and click events.");
|
|
|
|
function testFrame(src) {
|
|
var iframe = document.createElement("iframe");
|
|
iframe.src = src;
|
|
window.callback = function(result) {
|
|
window.callback = null;
|
|
document.body.removeChild(iframe);
|
|
iframe = null;
|
|
ok(result, "Got notificationclick event with correct data.");
|
|
MockServices.unregister();
|
|
registration.unregister().then(function() {
|
|
SimpleTest.finish();
|
|
});
|
|
};
|
|
document.body.appendChild(iframe);
|
|
}
|
|
|
|
var registration;
|
|
|
|
function runTest() {
|
|
MockServices.register();
|
|
navigator.serviceWorker.register("notificationclick.js", { scope: "notificationclick-otherwindow.html" }).then(function(reg) {
|
|
registration = reg;
|
|
return waitForState(reg.installing, 'activated');
|
|
}, function(e) {
|
|
ok(false, "registration should have passed!");
|
|
}).then(() => {
|
|
testFrame('notificationclick-otherwindow.html');
|
|
});
|
|
};
|
|
|
|
SimpleTest.waitForExplicitFinish();
|
|
SpecialPowers.pushPrefEnv({"set": [
|
|
["dom.serviceWorkers.exemptFromPerDomainMax", true],
|
|
["dom.serviceWorkers.enabled", true],
|
|
["dom.serviceWorkers.testing.enabled", true],
|
|
["dom.webnotifications.workers.enabled", true],
|
|
["dom.webnotifications.serviceworker.enabled", true],
|
|
["notification.prompt.testing", true],
|
|
]}, runTest);
|
|
</script>
|
|
</body>
|
|
</html>
|