summaryrefslogtreecommitdiffstats
path: root/dom/media/test/test_mediarecorder_record_changing_video_resolution.html
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /dom/media/test/test_mediarecorder_record_changing_video_resolution.html
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'dom/media/test/test_mediarecorder_record_changing_video_resolution.html')
-rw-r--r--dom/media/test/test_mediarecorder_record_changing_video_resolution.html69
1 files changed, 69 insertions, 0 deletions
diff --git a/dom/media/test/test_mediarecorder_record_changing_video_resolution.html b/dom/media/test/test_mediarecorder_record_changing_video_resolution.html
new file mode 100644
index 000000000..96329ff2c
--- /dev/null
+++ b/dom/media/test/test_mediarecorder_record_changing_video_resolution.html
@@ -0,0 +1,69 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+ <title>Test MediaRecorder Recording canvas stream that dynamically changes resolution</title>
+ <script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
+ <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
+</head>
+<body>
+<pre id="test">
+<div id="content">
+</div>
+<script class="testbody" type="text/javascript">
+
+function startTest() {
+ var content = document.getElementById("content");
+
+ var canvas = document.createElement("canvas");
+ canvas.width = canvas.height = 100;
+
+ var ctx = canvas.getContext("2d");
+ ctx.fillStyle = "red";
+ ctx.fillRect(0, 0, canvas.width, canvas.height);
+
+ var stream = canvas.captureStream(0);
+
+ var numErrorRaised = 0;
+ var numDataAvailabledRaised = 0;
+
+ mediaRecorder = new MediaRecorder(stream);
+ is(mediaRecorder.stream, stream,
+ "Media recorder stream = canvas stream at the start of recording");
+
+ mediaRecorder.onwarning = () => ok(false, "onwarning unexpectedly fired");
+
+ mediaRecorder.onerror = err => {
+ info("Got 'error' event, " + err.name + " (" + err.message + ")");
+ ++numErrorRaised;
+ };
+
+ mediaRecorder.ondataavailable = ev => {
+ info("Got 'dataavailable' event");
+ ++numDataAvailabledRaised;
+ };
+
+ mediaRecorder.onstart = () => {
+ canvas.width = canvas.height = canvas.width * 1.1;
+ ctx.fillStyle = "blue";
+ ctx.fillRect(0, 0, canvas.width, canvas.height);
+ stream.requestFrame();
+ };
+
+ mediaRecorder.onstop = () => {
+ info("Got 'stop' event");
+ is(numErrorRaised, 1, "Should have gotten 1 error event");
+ is(numDataAvailabledRaised, 1, "Should have gotten 1 dataavailable event");
+ SimpleTest.finish();
+ };
+
+ mediaRecorder.start();
+ is(mediaRecorder.state, "recording", "Media recorder should be recording");
+}
+
+SimpleTest.waitForExplicitFinish();
+startTest();
+
+</script>
+</pre>
+</body>
+</html>