| function createPassFail(condition, test, cleanup, cleanupParam) { | |
| var div = document.querySelector("#passfail") | |
| var para = document.createElement("p") | |
| var pass = document.createElement("button") | |
| var fail = document.createElement("button") | |
| var style = "font-family: monospace" | |
| para.innerHTML = condition | |
| + ', press the PASS button;' | |
| + ' otherwise press the FAIL button.', | |
| pass.innerHTML = "PASS" | |
| fail.innerHTML = "FAIL" | |
| pass.setAttribute("style", style) | |
| fail.setAttribute("style", style) | |
| pass.addEventListener("click", function () { | |
| clearPassFail() | |
| cleanup(cleanupParam) | |
| test.done() | |
| }, false) | |
| fail.addEventListener("click", function () { | |
| clearPassFail() | |
| cleanup(cleanupParam) | |
| test.force_timeout() | |
| test.set_status(test.FAIL) | |
| test.done() | |
| }, false) | |
| document.body.appendChild(div) | |
| div.appendChild(para) | |
| div.appendChild(pass) | |
| div.appendChild(fail) | |
| } | |
| function clearPassFail() { | |
| document.querySelector("#passfail").innerHTML = "" | |
| } | |
| function closeNotifications(notifications) { | |
| for (var i=0; i < notifications.length; i++) { | |
| notifications[i].close() | |
| } | |
| } | |
| function hasNotificationPermission() { | |
| Notification.requestPermission() | |
| if (Notification.permission != "granted") { | |
| alert("TEST NOT RUN. Change your browser settings so that" | |
| + " notifications for this origin are allowed, and then re-run" | |
| + " this test.") | |
| return false | |
| } | |
| return true | |
| } |