Chromium Code Reviews| Index: LayoutTests/http/tests/serviceworker/update-error.html |
| diff --git a/LayoutTests/http/tests/serviceworker/update-error.html b/LayoutTests/http/tests/serviceworker/update-error.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..b9950e05310e784008c5dc90a7f06523038179ae |
| --- /dev/null |
| +++ b/LayoutTests/http/tests/serviceworker/update-error.html |
| @@ -0,0 +1,37 @@ |
| +<!DOCTYPE html> |
| +<title>Service Worker: ServiceWorkerRegistration.update() error.</title> |
| +<script src="../resources/testharness.js"></script> |
| +<script src="../resources/testharnessreport.js"></script> |
| +<script src="resources/test-helpers.js"></script> |
| +<script> |
| +promise_test(function(t) { |
|
nhiroki
2015/08/06 09:57:28
How about merging this test into serviceworker/upd
jungkees
2015/08/06 10:53:12
Okay. I'll upload a new snapshot when I'm ready wi
|
| + var scope = 'resources/scope/update'; |
| + var worker_url = 'resources/update-worker-error.php'; |
| + var expected_url = normalizeURL(worker_url); |
| + var registration; |
| + |
| + return service_worker_unregister_and_register(t, worker_url, scope) |
| + .then(function(r) { |
| + registration = r; |
| + return wait_for_state(t, registration.installing, 'activated'); |
| + }) |
| + .then(function() { |
| + assert_equals(registration.installing, null, |
| + 'installing should be null in the initial state.'); |
| + assert_equals(registration.waiting, null, |
| + 'waiting should be null in the initial state.'); |
| + assert_equals(registration.active.scriptURL, expected_url, |
| + 'active should exist in the initial state.'); |
| + |
| + // A new worker(generated by update-worker-error.php) should be found. |
| + // The returned promise should reject as update-worker-error.php sets |
| + // the mimetype to disallowed value. |
| + return registration.update(); |
| + }) |
| + .catch(function(e) { |
| + assert_throws("SecurityError", function() { throw e; }, |
| + 'Using a disallowed mimetype should make update() ' + |
| + 'promise reject with a SecurityError.'); |
| + }); |
| + }, 'Update a registration caught an error.'); |
| +</script> |