Index: tests/html/notifications_test.dart |
diff --git a/tests/html/notifications_test.dart b/tests/html/notifications_test.dart |
new file mode 100644 |
index 0000000000000000000000000000000000000000..8e3ae43638689c7c08ce504c9135a0807f55bacf |
--- /dev/null |
+++ b/tests/html/notifications_test.dart |
@@ -0,0 +1,42 @@ |
+library NotificationsTest; |
+import '../../pkg/unittest/lib/unittest.dart'; |
+import '../../pkg/unittest/lib/html_individual_config.dart'; |
+import 'dart:html'; |
+ |
+main() { |
+ useHtmlIndividualConfiguration(); |
+ |
+ group('supported', () { |
+ test('supported', () { |
+ expect(NotificationCenter.supported, true); |
+ }); |
+ }); |
+ |
+ group('unsupported_throws', () { |
+ test('createNotification', () { |
+ var expectation = NotificationCenter.supported ? returnsNormally : throws; |
+ expect(() { window.notifications.createNotification; }, expectation); |
+ }); |
+ }); |
+ |
+ group('webkitNotifications', () { |
+ if (NotificationCenter.supported) { |
+ test('DomException', () { |
+ try { |
+ window.notifications.createNotification('', '', ''); |
+ } on DomException catch (e) { |
+ expect(e.name, DomException.SECURITY); |
+ } |
+ }); |
+ |
+ /* |
+ // Sporadically flaky on Mac Chrome. Uncomment when Issue 8482 is fixed. |
+ test('construct notification', () { |
+ var note = new Notification('this is a notification'); |
+ var note2 = new Notification('another notificiation', titleDir: 'foo'); |
+ }); |
+ */ |
+ } |
+ }); |
+} |
+ |