summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/webcodecs/encoded-video-chunk.crossOriginIsolated.https.any.js
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/webcodecs/encoded-video-chunk.crossOriginIsolated.https.any.js')
-rw-r--r--testing/web-platform/tests/webcodecs/encoded-video-chunk.crossOriginIsolated.https.any.js29
1 files changed, 29 insertions, 0 deletions
diff --git a/testing/web-platform/tests/webcodecs/encoded-video-chunk.crossOriginIsolated.https.any.js b/testing/web-platform/tests/webcodecs/encoded-video-chunk.crossOriginIsolated.https.any.js
new file mode 100644
index 0000000000..7f414fec1f
--- /dev/null
+++ b/testing/web-platform/tests/webcodecs/encoded-video-chunk.crossOriginIsolated.https.any.js
@@ -0,0 +1,29 @@
+// META: global=window,dedicatedworker
+// META: script=/webcodecs/utils.js
+
+function testSharedArrayBufferEncodedVideoChunk(useView) {
+ let data = new SharedArrayBuffer(3);
+ let view = new Uint8Array(data);
+ view[0] = 0x0A;
+ view[1] = 0x0B;
+ view[2] = 0x0C;
+
+ let chunk = new EncodedVideoChunk(
+ {type: 'key', timestamp: 10, duration: 123, data: useView ? view : data});
+ assert_equals(chunk.byteLength, 3, 'byteLength');
+
+ let copyDest = new SharedArrayBuffer(3);
+ let destView = new Uint8Array(copyDest);
+ chunk.copyTo(useView ? destView : copyDest);
+ assert_equals(destView[0], 0x0A, 'copyDest[0]');
+ assert_equals(destView[1], 0x0B, 'copyDest[1]');
+ assert_equals(destView[2], 0x0C, 'copyDest[2]');
+}
+
+test(t => {
+ testSharedArrayBufferEncodedVideoChunk(/*useView=*/ false);
+}, 'Test construction and copyTo() using a SharedArrayBuffer');
+
+test(t => {
+ testSharedArrayBufferEncodedVideoChunk(/*useView=*/ true);
+}, 'Test construction and copyTo() using a Uint8Array(SharedArrayBuffer)');