Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(82)

Unified Diff: third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/update.https.html

Issue 2415873002: Import w3c tests for the service workers (Closed)
Patch Set: Rebase Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/update.https.html
diff --git a/third_party/WebKit/LayoutTests/http/tests/serviceworker/update.html b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/update.https.html
similarity index 75%
copy from third_party/WebKit/LayoutTests/http/tests/serviceworker/update.html
copy to third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/update.https.html
index 82db1920d86ac8be8453caa4023f5ee6edefd8b0..213b72ac837309d43112d7965a17e2162e7ffb9b 100644
--- a/third_party/WebKit/LayoutTests/http/tests/serviceworker/update.html
+++ b/third_party/WebKit/LayoutTests/imported/wpt/service-workers/service-worker/update.https.html
@@ -1,14 +1,16 @@
<!DOCTYPE html>
<title>Service Worker: Registration update()</title>
-<script src="../resources/testharness.js"></script>
-<script src="../resources/testharnessreport.js"></script>
-<script src="resources/test-helpers.js"></script>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="resources/testharness-helpers.js"></script>
+<script src="resources/test-helpers.sub.js"></script>
<script>
promise_test(function(t) {
- var scope = 'resources/scope/update';
- var worker_url = 'resources/update-worker.php';
+ var scope = 'resources/simple.txt';
+ var worker_url = 'resources/update-worker.py';
var expected_url = normalizeURL(worker_url);
var registration;
+ var iframe;
return service_worker_unregister_and_register(t, worker_url, scope)
.then(function(r) {
registration = r;
@@ -21,8 +23,7 @@ promise_test(function(t) {
'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.php) should be found.
+ // A new worker (generated by update-worker.py) should be found.
// The returned promise should resolve when a new worker script is
// fetched and starts installing.
return Promise.all([registration.update(),
@@ -40,11 +41,13 @@ promise_test(function(t) {
.then(function() {
assert_equals(registration.installing, null,
'installing should be null after installing.');
- assert_equals(registration.waiting.scriptURL, expected_url,
- 'waiting should be set after installing.');
- assert_equals(registration.active.scriptURL, expected_url,
- 'active should still exist after installing.');
- return wait_for_state(t, registration.waiting, 'activated');
+ if (registration.waiting) {
+ assert_equals(registration.waiting.scriptURL, expected_url,
+ 'waiting should be set after installing.');
+ assert_equals(registration.active.scriptURL, expected_url,
+ 'active should still exist after installing.');
+ return wait_for_state(t, registration.waiting, 'activated');
+ }
})
.then(function() {
assert_equals(registration.installing, null,
@@ -55,8 +58,8 @@ promise_test(function(t) {
'new worker should be promoted to active.');
})
.then(function() {
- // A new worker(generated by update-worker.php) should be found.
- // The returned promise should reject as update-worker.php sets the
+ // A new worker(generated by update-worker.py) should be found.
+ // The returned promise should reject as update-worker.py sets the
// mimetype to a disallowed value for this attempt.
return registration.update();
})
@@ -92,11 +95,11 @@ promise_test(function(t) {
})
.then(function() {
assert_equals(registration.installing.scriptURL, expected_url,
- 'installing should be set after update resolves (throw-install).');
+ 'new installing should be set after update resolves.');
assert_equals(registration.waiting, null,
- 'waiting should still be null after update resolves (throw-install).');
+ 'waiting should be null after activated.');
assert_equals(registration.active.scriptURL, expected_url,
- 'active should still exist after update found (throw-install).');
+ 'active should still exist after update found.');
// We need to hold a client alive so that unregister() below doesn't
// remove the registration before update() has had a chance to look
@@ -104,16 +107,17 @@ promise_test(function(t) {
return with_iframe(scope);
})
.then(function(frame) {
- return Promise.all([registration.unregister(),
- registration.update()]);
+ iframe = frame;
+
+ return assert_promise_rejects(
+ Promise.all([registration.unregister(), registration.update()]),
+ new TypeError(),
+ 'Calling update() while the uninstalling flag is set ' +
+ 'should return a promise that rejects with a TypeError.');
})
- .then(
- function() { assert_unreached("update() should reject."); },
- function(e) {
- assert_throws({name: 'TypeError'}, function () { throw e; },
- 'Calling update() while the uninstalling flag is ' +
- 'set should return a promise that rejects with an ' +
- 'TypeError.');
+ .then(function() {
+ iframe.remove();
+ return t.done();
});
}, 'Update a registration.');
</script>

Powered by Google App Engine
This is Rietveld 408576698