| Index: LayoutTests/http/tests/notifications/notification-properties.html
|
| diff --git a/LayoutTests/http/tests/notifications/notification-properties.html b/LayoutTests/http/tests/notifications/notification-properties.html
|
| index 01f10f9edfb7c8b8641f58a7174c25903001e1f4..0a23769a106b6a2bee5bed36f32b399a1f0151ac 100644
|
| --- a/LayoutTests/http/tests/notifications/notification-properties.html
|
| +++ b/LayoutTests/http/tests/notifications/notification-properties.html
|
| @@ -20,8 +20,15 @@
|
| tag: "notification",
|
| icon: "http://localhost/my_icon.png",
|
| silent: true,
|
| - data: "my data"
|
| + data: "my data",
|
| + actions: []
|
| };
|
| + // Deliberately add more actions than are supported.
|
| + for (var i = 0; i < 2 * Notification.maxActions; i++) {
|
| + options.actions.push({
|
| + title: "Action " + i
|
| + });
|
| + }
|
|
|
| var notification = new Notification("My Notification", options);
|
|
|
| @@ -33,6 +40,17 @@
|
| assert_equals(notification.icon, options.icon);
|
| assert_true(notification.silent);
|
| assert_equals(notification.data, options.data);
|
| + // Only the first maxActions actions should be reflected.
|
| + assert_object_equals(notification.actions, options.actions.slice(0, Notification.maxActions));
|
| +
|
| + // Notification.actions should be immutable.
|
| + notification.actions.push({ title: "Foo" });
|
| + notification.actions.foo = "bar";
|
| + if (notification.actions.length) {
|
| + notification.actions[0].title = "Changed";
|
| + notification.actions[0].foo = "bar";
|
| + }
|
| + assert_object_equals(notification.actions, options.actions.slice(0, Notification.maxActions));
|
|
|
| var emptyNotification = new Notification("My Notification");
|
|
|
| @@ -45,6 +63,7 @@
|
| assert_equals(notification.vibrate, null);
|
| assert_false(emptyNotification.silent);
|
| assert_equals(emptyNotification.data, null);
|
| + assert_array_equals(emptyNotification.actions, []);
|
|
|
| var invalidIconNotification = new Notification("My Notification", {
|
| icon: "http://test:test/"
|
| @@ -104,6 +123,19 @@
|
| });
|
| }, 'Set vibrate, when silent is true.');
|
|
|
| + // Check exception is thrown when an action doesn't contain title,
|
| + // or title is an empty string.
|
| + assert_throws(new TypeError(), function() {
|
| + var notification = new Notification("My Notification", {
|
| + actions: [{}]
|
| + });
|
| + }, 'Provide action without title.');
|
| + assert_throws(new TypeError(), function() {
|
| + var notification = new Notification("My Notification", {
|
| + actions: [{title: ""}]
|
| + });
|
| + }, 'Provide action with empty title.');
|
| +
|
| }, 'Checks the properties exposed on the Notification object.');
|
| </script>
|
| </body>
|
|
|