| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <script src="/js-test-resources/testharness.js"></script> |
| <script src="/js-test-resources/testharnessreport.js"></script> |
| </head> |
| <body> |
| <div id="log"></div> |
| <div id="container"></div> |
| <script> |
| |
| test(function() { |
| assert_throws(new TypeError(), function() { new Notification(); }); |
| }, "The Notification constructor requires at least one argument."); |
| |
| test(function() { |
| let notification = new Notification("test title"); |
| |
| assert_class_string(notification, "Notification"); |
| assert_equals(notification.title, "test title"); |
| assert_equals(notification.dir, "auto"); |
| assert_equals(notification.lang, ""); |
| assert_equals(notification.body, ""); |
| assert_equals(notification.tag, ""); |
| assert_equals(notification.icon, ""); |
| }, "The Notification object initializes its properties to their default values from the NotificationOptions dictionary if it is not provided."); |
| |
| test(function() { |
| let notification = new Notification("test title", { |
| dir: "ltr", |
| lang: "en", |
| body: "test body", |
| tag: "test tag", |
| icon: "foo.png" |
| }); |
| |
| assert_equals(notification.title, "test title"); |
| assert_equals(notification.dir, "ltr"); |
| assert_equals(notification.lang, "en"); |
| assert_equals(notification.body, "test body"); |
| assert_equals(notification.tag, "test tag"); |
| assert_equals(notification.icon, "http://127.0.0.1:8000/notifications/foo.png"); |
| }, "The Notification object initializes its properties to the values from NotificationOptions dictionary if it is provided."); |
| |
| test(function() { |
| let notification1 = new Notification("test title", { dir: "auto" }); |
| assert_equals(notification1.dir, "auto"); |
| |
| let notification2 = new Notification("test title", { dir: "ltr" }); |
| assert_equals(notification2.dir, "ltr"); |
| |
| let notification3 = new Notification("test title", { dir: "rtl" }); |
| assert_equals(notification3.dir, "rtl"); |
| |
| assert_throws(new TypeError(), function() { new Notification("test title", { dir: "foo" }) }); |
| }, "The NotificationOptions dictionary only accepts valid NotificationDirection values."); |
| |
| </script> |
| </body> |
| </html> |