[Streams API] imported/w3c/web-platform-tests/streams-api/readable-streams/cancel...
authorcalvaris@igalia.com <calvaris@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 18 Dec 2015 11:10:44 +0000 (11:10 +0000)
committercalvaris@igalia.com <calvaris@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 18 Dec 2015 11:10:44 +0000 (11:10 +0000)
https://bugs.webkit.org/show_bug.cgi?id=152065

Reviewed by Youenn Fablet.

https://github.com/whatwg/streams/pull/414 and https://github.com/whatwg/streams/issues/413 was closed. Changes
I did on the spec were integrated so they were brought back to the imported tests in WebKit.

* web-platform-tests/streams-api/README.txt: Updated version.
* web-platform-tests/streams-api/readable-streams/cancel-expected.txt: Expectations.
* web-platform-tests/streams-api/readable-streams/cancel.js: Changed to cancel test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@194267 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/streams-api/README.txt
LayoutTests/imported/w3c/web-platform-tests/streams-api/readable-streams/cancel-expected.txt
LayoutTests/imported/w3c/web-platform-tests/streams-api/readable-streams/cancel.js

index 7c7e671..c103703 100644 (file)
@@ -1,3 +1,17 @@
+2015-12-18  Xabier Rodriguez Calvar  <calvaris@igalia.com>
+
+        [Streams API] imported/w3c/web-platform-tests/streams-api/readable-streams/cancel.html has a flaky test
+        https://bugs.webkit.org/show_bug.cgi?id=152065
+
+        Reviewed by Youenn Fablet.
+
+        https://github.com/whatwg/streams/pull/414 and https://github.com/whatwg/streams/issues/413 was closed. Changes
+        I did on the spec were integrated so they were brought back to the imported tests in WebKit.
+
+        * web-platform-tests/streams-api/README.txt: Updated version.
+        * web-platform-tests/streams-api/readable-streams/cancel-expected.txt: Expectations.
+        * web-platform-tests/streams-api/readable-streams/cancel.js: Changed to cancel test.
+
 2015-12-17  Youenn Fablet  <youenn.fablet@crf.canon.fr>
 
         Remove temporary flakiness expectations for WPT tests introduced for bug 152257
index 567ad10..2f7f607 100644 (file)
@@ -3,4 +3,4 @@ This directory is imported from the the Streams API repository.
 There is a plan to move these tests to web-platform-tests repository so from that moment on this importation will be
 automatic.
 
-Current version: https://github.com/whatwg/streams/tree/18ed463e50c189c0198e2336dfbd10b17f379081/reference-implementation/web-platform-tests
+Current version: https://github.com/whatwg/streams/tree/f7cb0eac03e6a6d045d6e8c09df1f9f8a264fdef/reference-implementation/web-platform-tests.
index 80b94ac..c994b3b 100644 (file)
@@ -1,5 +1,5 @@
 
-FAIL ReadableStream cancellation: integration test on an infinite stream derived from a random push source promise_test: Unhandled rejection with value: object "Error: forced error"
+PASS ReadableStream cancellation: integration test on an infinite stream derived from a random push source 
 PASS ReadableStream cancellation: cancel(reason) should pass through the given reason to the underlying source 
 PASS ReadableStream cancellation: cancel() on a locked stream should fail and not call the underlying source cancel 
 PASS ReadableStream cancellation: should fulfill promise when cancel callback went fine 
@@ -11,7 +11,7 @@ PASS ReadableStream cancellation: if the underlying source's cancel method retur
 PASS ReadableStream cancellation: cancelling before start finishes should prevent pull() from being called 
 FAIL Load cancel.js with SharedWorker assert_unreached: SharedWorker is unavailable Reached unreachable code
 FAIL Untitled undefined is not an object (evaluating 'navigator.serviceWorker.getRegistration')
-FAIL ReadableStream cancellation: integration test on an infinite stream derived from a random push source promise_test: Unhandled rejection with value: object "Error: forced error"
+PASS ReadableStream cancellation: integration test on an infinite stream derived from a random push source 
 PASS ReadableStream cancellation: cancel(reason) should pass through the given reason to the underlying source 
 PASS ReadableStream cancellation: cancel() on a locked stream should fail and not call the underlying source cancel 
 PASS ReadableStream cancellation: should fulfill promise when cancel callback went fine 
index 82027db..f5014c2 100644 (file)
@@ -8,9 +8,6 @@ if (self.importScripts) {
 
 promise_test(() => {
 
-  // WebKit edit. We force a failure in this tests for now because it is flaky.
-  return Promise.reject(new Error("forced error"));
-
   const randomSource = new RandomPushSource();
 
   let cancellationFinished = false;
@@ -42,14 +39,17 @@ promise_test(() => {
 
   // We call delay multiple times to avoid cancelling too early for the
   // source to enqueue at least one chunk.
-  const cancel = delay(5).then(() => delay(5)).then(() => delay(5)).then(() => reader.cancel());
+  const cancel = delay(5).then(() => delay(5)).then(() => delay(5)).then(() => {
+    let cancelPromise = reader.cancel();
+    assert_false(cancellationFinished, 'cancellation in source should happen later');
+    return cancelPromise;
+  })
 
   return readableStreamToArray(rs, reader).then(chunks => {
     assert_greater_than(chunks.length, 0, 'at least one chunk should be read');
     for (let i = 0; i < chunks.length; i++) {
       assert_equals(chunks[i].length, 128, 'chunk ' + i + ' should have 128 bytes');
     }
-    assert_false(cancellationFinished, 'it did not wait for the cancellation process to finish before closing');
     return cancel;
   }).then(() => {
     assert_true(cancellationFinished, 'it returns a promise that is fulfilled when the cancellation finishes');