| <!doctype html> | |
| <meta charset=utf-8> | |
| <title>Notification interface IDL tests</title> | |
| <div id=log></div> | |
| <script src=/resources/testharness.js></script> | |
| <script src=/resources/testharnessreport.js></script> | |
| <script src=/resources/WebIDLParser.js></script> | |
| <script src=/resources/idlharness.js></script> | |
| <script type=text/plain class=untested> | |
| interface EventTarget { | |
| void addEventListener(DOMString type, EventListener? callback, optional boolean capture /* = false */); | |
| void removeEventListener(DOMString type, EventListener? callback, optional boolean capture /* = false */); | |
| boolean dispatchEvent(Event event); | |
| }; | |
| [TreatNonCallableAsNull] | |
| callback EventHandlerNonNull = any (Event event); | |
| typedef EventHandlerNonNull? EventHandler; | |
| </script> | |
| <script type=text/plain> | |
| [Constructor(DOMString title, optional NotificationOptions options)] | |
| interface Notification : EventTarget { | |
| static readonly attribute NotificationPermission permission; | |
| static void requestPermission(optional NotificationPermissionCallback callback); | |
| attribute EventHandler onclick; | |
| attribute EventHandler onshow; | |
| attribute EventHandler onerror; | |
| attribute EventHandler onclose; | |
| readonly attribute DOMString title; | |
| readonly attribute NotificationDirection dir; | |
| readonly attribute DOMString lang; | |
| readonly attribute DOMString body; | |
| readonly attribute DOMString tag; | |
| readonly attribute DOMString icon; | |
| void close(); | |
| }; | |
| dictionary NotificationOptions { | |
| NotificationDirection dir = "auto"; | |
| DOMString lang = ""; | |
| DOMString body; | |
| DOMString tag; | |
| DOMString icon; | |
| }; | |
| dictionary GetNotificationsOptions { | |
| DOMString tag; | |
| }; | |
| enum NotificationPermission { | |
| "default", | |
| "denied", | |
| "granted" | |
| }; | |
| callback NotificationPermissionCallback = void (NotificationPermission permission); | |
| enum NotificationDirection { | |
| "auto", | |
| "ltr", | |
| "rtl" | |
| }; | |
| </script> | |
| <script> | |
| "use strict"; | |
| var idlArray = new IdlArray(); | |
| [].forEach.call(document.querySelectorAll("script[type=text\\/plain]"), function(node) { | |
| if (node.className == "untested") { | |
| idlArray.add_untested_idls(node.textContent); | |
| } else { | |
| idlArray.add_idls(node.textContent); | |
| } | |
| }); | |
| idlArray.add_objects({ | |
| Notification: ['new Notification("Running idlharness.")'], | |
| }); | |
| idlArray.test(); | |
| </script> |