diff options
Diffstat (limited to 'testing/web-platform/tests/webrtc/RTCDataChannel-send-blob-order.html')
-rw-r--r-- | testing/web-platform/tests/webrtc/RTCDataChannel-send-blob-order.html | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/testing/web-platform/tests/webrtc/RTCDataChannel-send-blob-order.html b/testing/web-platform/tests/webrtc/RTCDataChannel-send-blob-order.html new file mode 100644 index 0000000000..3fcf116bc8 --- /dev/null +++ b/testing/web-platform/tests/webrtc/RTCDataChannel-send-blob-order.html @@ -0,0 +1,31 @@ +<!doctype html> +<meta charset=utf-8> +<title>RTCDataChannel.prototype.send for blobs</title> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="RTCPeerConnection-helper.js"></script> +<script> + +for (const options of [{}, {negotiated: true, id: 0}]) { + const mode = `${options.negotiated? "Negotiated d" : "D"}atachannel`; + + promise_test(async t => { + const data1 = new Blob(['blob']); + const data1Size = data1.size; + const data2 = new ArrayBuffer(8); + const data2Size = data2.byteLength; + + const [channel1, channel2] = await createDataChannelPair(t, options); + channel2.binaryType = "arraybuffer"; + + channel1.send(data1); + channel1.send(data2); + + let e = await new Promise(r => channel2.onmessage = r); + assert_equals(e.data.byteLength, data1Size); + + e = await new Promise(r => channel2.onmessage = r); + assert_equals(e.data.byteLength, data2Size); + }, `${mode} should send data following the order of the send call`); +} +</script> |