Chromium Code Reviews| Index: LayoutTests/push_messaging/push-messaging-has-permission.html |
| diff --git a/LayoutTests/push_messaging/push-messaging-has-permission.html b/LayoutTests/push_messaging/push-messaging-has-permission.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..0aa22677b5e9fa25e9b65b369c0a5873781f9c88 |
| --- /dev/null |
| +++ b/LayoutTests/push_messaging/push-messaging-has-permission.html |
| @@ -0,0 +1,48 @@ |
| +<!DOCTYPE html> |
| +<html> |
| +<head> |
| +<script src='../resources/js-test.js'></script> |
|
Michael van Ouwerkerk
2014/10/24 12:53:01
nit: double quotes for html attributes please
Miguel Garcia
2014/10/31 17:04:47
Done.
|
| +</head> |
| +<body> |
| +<script> |
| +description('Tests for the Push API has permission method.'); |
|
Michael van Ouwerkerk
2014/10/24 12:53:01
hasPermission
Miguel Garcia
2014/10/31 17:04:47
Done.
|
| + |
| +if (!window.testRunner) |
| + debug('This test can not run without testRunner'); |
| + |
| +window.jsTestIsAsync = true; |
| + |
| +function testPushHasPermissionDefault() { |
| + window.testRunner.setMockPushClientError('permission_default'); |
| + testPushHasPermission('default', testPushHasPermissionDenied); |
| +} |
| + |
| +function testPushHasPermissionDenied() { |
| + window.testRunner.setMockPushClientError('deny_permission'); |
| + testPushHasPermission('denied', testPushHasPermissionGranted); |
| +} |
| + |
| +function testPushHasPermissionGranted() { |
| + window.testRunner.setMockPushClientSuccess('endpoint', 'registrationId'); |
| + testPushHasPermission('granted'); |
| +} |
| + |
| +function testPushHasPermission(expectedStatus, runNext) { |
| + navigator.push.hasPermission().then(function(permissionStatus) { |
| + status = permissionStatus; |
|
Peter Beverloo
2014/10/24 13:03:24
nit: double space before the =
Miguel Garcia
2014/10/31 17:04:47
Done.
|
| + shouldBeEqualToString('status', expectedStatus); |
|
Peter Beverloo
2014/10/24 13:03:24
shouldBeEqualToString('status', 'expectedStatus')
Miguel Garcia
2014/10/31 17:04:47
Oh, here it still matters, see previous comment.
|
| + if (runNext) |
| + runNext(); |
| + else |
| + finishJSTest(); |
| + }, function() { |
| + testFailed('Error callback invoked unexpectedly.'); |
|
Peter Beverloo
2014/10/24 13:03:24
s/Error callback invoked/Promise rejected/.
Miguel Garcia
2014/10/31 17:04:47
Done
|
| + finishJSTest(); |
| + }); |
| +} |
| + |
| +testPushHasPermissionDefault(); |
| + |
| +</script> |
| +</body> |
| +</html> |