summaryrefslogtreecommitdiffstats
path: root/dom/media/webcodecs/test
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/webcodecs/test')
-rw-r--r--dom/media/webcodecs/test/mochitest.ini7
-rw-r--r--dom/media/webcodecs/test/test_videoFrame_mismatched_codedSize.html30
2 files changed, 37 insertions, 0 deletions
diff --git a/dom/media/webcodecs/test/mochitest.ini b/dom/media/webcodecs/test/mochitest.ini
new file mode 100644
index 0000000000..3d0268cc9d
--- /dev/null
+++ b/dom/media/webcodecs/test/mochitest.ini
@@ -0,0 +1,7 @@
+[DEFAULT]
+subsuite = media
+tags = webcodecs
+prefs =
+ dom.media.webcodecs.enabled=true
+
+[test_videoFrame_mismatched_codedSize.html]
diff --git a/dom/media/webcodecs/test/test_videoFrame_mismatched_codedSize.html b/dom/media/webcodecs/test/test_videoFrame_mismatched_codedSize.html
new file mode 100644
index 0000000000..52e26f7854
--- /dev/null
+++ b/dom/media/webcodecs/test/test_videoFrame_mismatched_codedSize.html
@@ -0,0 +1,30 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+ <title></title>
+ <script src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
+</head>
+<body>
+<script>
+let data = new Uint8Array([
+ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
+]);
+// TODO: Crop the image instead of returning errors (Bug 1782128).
+try {
+ // Bug 1793814: Remove eslint-disable-line below
+ let frame = new VideoFrame(data, { // eslint-disable-line no-undef
+ timestamp: 10,
+ codedWidth: 3,
+ codedHeight: 3,
+ visibleRect: { x: 0, y: 0, width: 1, height: 1 },
+ format: "RGBA",
+ });
+ frame.close();
+ ok(false, "Should not create a VideoFrame from a mismatched-size buffer");
+} catch (e) {
+ ok(e instanceof TypeError, "Should throw a TypeError");
+}
+</script>
+</body>
+</html>