tee.any.html

FAILExpected16 of 26 subtests pass455 ms

Details

Test
/streams/readable-streams/tee.any.html
Harness
OK

Subtests

StatusSubtestMessage
PASSReadableStream teeing: rs.tee() returns an array of two ReadableStreams
PASSReadableStream teeing: should be able to read one branch to the end without affecting the other
PASSReadableStream teeing: values should be equal across each branch
FAILReadableStream teeing: errors in the source should propagate to both branches
assert_unreached: Should have rejected: undefined Reached unreachable code
assert_unreached: Should have rejected: undefined Reached unreachable code
PASSReadableStream teeing: canceling branch1 should not impact branch2
PASSReadableStream teeing: canceling branch2 should not impact branch1
PASSRunning templatedRSTeeCancel with ReadableStream teeing
FAILReadableStream teeing: canceling both branches should aggregate the cancel reasons into an array
assert_array_equals: the cancel reason should be an array containing those from the branches value is object "Error: I have the death sentence on twelve systems.", expected array
assert_array_equals: the cancel reason should be an array containing those from the branches value is object "Error: I have the death sentence on twelve systems.", expected array
FAILReadableStream teeing: canceling both branches in reverse order should aggregate the cancel reasons into an array
assert_array_equals: the cancel reason should be an array containing those from the branches value is object "Error: This little one's not worth the effort.", expected array
assert_array_equals: the cancel reason should be an array containing those from the branches value is object "Error: This little one's not worth the effort.", expected array
FAILReadableStream teeing: failing to cancel the original stream should cause cancel() to reject on branches
assert_unreached: Should have rejected: undefined Reached unreachable code
assert_unreached: Should have rejected: undefined Reached unreachable code
PASSReadableStream teeing: erroring a teed stream should properly handle canceled branches
PASSReadableStream teeing: erroring a teed stream should error both branches
PASSReadableStream teeing: closing the original should immediately close the branches
PASSReadableStream teeing: erroring the original should immediately error the branches
PASSReadableStream teeing: canceling branch1 should finish when branch2 reads until end of stream
PASSReadableStream teeing: canceling branch1 should finish when original stream errors
PASSReadableStream teeing: canceling both branches in sequence with delay
FAILReadableStream teeing: failing to cancel when canceling both branches in sequence with delay
assert_unreached: Should have rejected: undefined Reached unreachable code
assert_unreached: Should have rejected: undefined Reached unreachable code
PASSReadableStreamTee should not use a modified ReadableStream constructor from the global object
FAILReadableStreamTee should not pull more chunks than can fit in the branch queue
assert_array_equals: pull should only be called once lengths differ, expected array ["pull"] length 1, got [] length 0
assert_array_equals: pull should only be called once lengths differ, expected array ["pull"] length 1, got [] length 0
FAILReadableStreamTee should only pull enough to fill the emptiest queue
assert_array_equals: pull should be called twice lengths differ, expected array ["pull", "pull"] length 2, got ["pull"] length 1
assert_array_equals: pull should be called twice lengths differ, expected array ["pull", "pull"] length 2, got ["pull"] length 1
PASSReadableStreamTee should not pull when original is already errored
FAILReadableStreamTee stops pulling when original stream errors while branch 1 is reading
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got [] length 0
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got [] length 0
FAILReadableStreamTee stops pulling when original stream errors while branch 2 is reading
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got [] length 0
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got [] length 0
FAILReadableStreamTee stops pulling when original stream errors while both branches are reading
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got [] length 0
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got [] length 0
PASSReadableStream teeing: enqueue() and close() while both branches are pulling