tee.any.html

FAILExpected21 of 40 subtests pass449 ms

Details

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

Subtests

StatusSubtestMessage
PASSReadableStream teeing with byte source: rs.tee() returns an array of two ReadableStreams
PASSReadableStream teeing with byte source: should be able to read one branch to the end without affecting the other
FAILReadableStream teeing with byte source: chunks should be cloned for each branch
assert_equals: reader1 value buffer.byteLength expected 1 but got 4096
assert_equals: reader1 value buffer.byteLength expected 1 but got 4096
FAILReadableStream teeing with byte source: chunks for BYOB requests from branch 1 should be cloned to branch 2
assert_equals: value buffer.byteLength expected 1 but got 4096
assert_equals: value buffer.byteLength expected 1 but got 4096
PASSReadableStream teeing with byte source: errors in the source should propagate to both branches
FAILReadableStream teeing with byte source: canceling branch1 should not impact branch2
assert_equals: branch2 should have two chunks expected 2 but got 1
assert_equals: branch2 should have two chunks expected 2 but got 1
FAILReadableStream teeing with byte source: canceling branch2 should not impact branch1
assert_equals: branch1 should have two chunks expected 2 but got 1
assert_equals: branch1 should have two chunks expected 2 but got 1
PASSRunning templatedRSTeeCancel with ReadableStream teeing with byte source
FAILReadableStream teeing with byte source: 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 with byte source: 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 with byte source: 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 with byte source: erroring a teed stream should properly handle canceled branches
PASSReadableStream teeing with byte source: closing the original should close the branches
PASSReadableStream teeing with byte source: erroring the original should immediately error the branches
PASSReadableStream teeing with byte source: erroring the original should error pending reads from default reader
PASSReadableStream teeing with byte source: erroring the original should error pending reads from BYOB reader
PASSReadableStream teeing with byte source: canceling branch1 should finish when branch2 reads until end of stream
PASSReadableStream teeing with byte source: canceling branch1 should finish when branch2 reads with a BYOB reader until end of stream
PASSReadableStream teeing with byte source: canceling branch1 should finish when original stream errors
PASSReadableStream teeing with byte source: should not pull any chunks if no branches are reading
PASSReadableStream teeing with byte source: should only pull enough to fill the emptiest queue
PASSReadableStream teeing with byte source: should not pull when original is already errored
PASSReadableStream teeing with byte source: stops pulling when original stream errors while branch 1 is reading
PASSReadableStream teeing with byte source: stops pulling when original stream errors while branch 2 is reading
FAILReadableStream teeing with byte source: 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 ["pull", "pull"] length 2
assert_array_equals: pull should be called once lengths differ, expected array ["pull"] length 1, got ["pull", "pull"] length 2
PASSReadableStream teeing with byte source: canceling both branches in sequence with delay
FAILReadableStream teeing with byte source: 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
FAILReadableStream teeing with byte source: read from branch1 and branch2, cancel branch1, cancel branch2
assert_equals: expected (undefined) undefined but got (object) object ""
assert_equals: expected (undefined) undefined but got (object) object ""
FAILReadableStream teeing with byte source: read from branch1 and branch2, cancel branch2, cancel branch1
assert_equals: expected (undefined) undefined but got (object) object ""
assert_equals: expected (undefined) undefined but got (object) object ""
FAILReadableStream teeing with byte source: read from branch1 and branch2, cancel branch2, enqueue to branch1
assert_equals: expected (undefined) undefined but got (object) object ""
assert_equals: expected (undefined) undefined but got (object) object ""
FAILReadableStream teeing with byte source: read from branch1 and branch2, cancel branch1, respond to branch2
assert_equals: expected (undefined) undefined but got (object) object ""
assert_equals: expected (undefined) undefined but got (object) object ""
FAILReadableStream teeing with byte source: pull with BYOB reader, then pull with default reader
assert_equals: second read buffer.byteLength expected 1 but got 4096
assert_equals: second read buffer.byteLength expected 1 but got 4096
FAILReadableStream teeing with byte source: pull with default reader, then pull with BYOB reader
assert_equals: first read buffer.byteLength expected 1 but got 4096
assert_equals: first read buffer.byteLength expected 1 but got 4096
PASSReadableStream teeing with byte source: read from branch2, then read from branch1
FAILReadableStream teeing with byte source: read from branch1 with default reader, then close while branch2 has pending BYOB read
assert_equals: first BYOB request expected null but got object "[object ReadableStreamBYOBRequest]"
assert_equals: first BYOB request expected null but got object "[object ReadableStreamBYOBRequest]"
FAILReadableStream teeing with byte source: read from branch2 with default reader, then close while branch1 has pending BYOB read
assert_equals: first BYOB request expected null but got object "[object ReadableStreamBYOBRequest]"
assert_equals: first BYOB request expected null but got object "[object ReadableStreamBYOBRequest]"
PASSReadableStream teeing with byte source: close when both branches have pending BYOB reads
FAILReadableStream teeing with byte source: enqueue() and close() while both branches are pulling
assert_equals: first chunk from branch1 should be correct buffer.byteLength expected 1 but got 4096
assert_equals: first chunk from branch1 should be correct buffer.byteLength expected 1 but got 4096
PASSReadableStream teeing with byte source: respond() and close() while both branches are pulling
FAILReadableStream teeing with byte source: reading an array with a byte offset should clone correctly
assert_equals: reader1 value byteOffset expected 2 but got 0
assert_equals: reader1 value byteOffset expected 2 but got 0