summaryrefslogtreecommitdiffstats
path: root/dom/media/test/test_standalone.html
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/test/test_standalone.html')
-rw-r--r--dom/media/test/test_standalone.html63
1 files changed, 24 insertions, 39 deletions
diff --git a/dom/media/test/test_standalone.html b/dom/media/test/test_standalone.html
index 620878a394..3b61f66d0a 100644
--- a/dom/media/test/test_standalone.html
+++ b/dom/media/test/test_standalone.html
@@ -6,56 +6,41 @@
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
<script type="text/javascript" src="manifest.js"></script>
</head>
-<body onload="doTest()">
-
-<pre id="test">
<script class="testbody" type="text/javascript">
-var iframes = [];
-
-for (let i=0; i<gSmallTests.length; ++i) {
- var test = gSmallTests[i];
+// Test whether video can be played correctly in a video document
+add_task(async function testStandAloneVideoDocument() {
+ for (let i=0; i<gSmallTests.length; ++i) {
+ const test = gSmallTests[i];
- // We can't play WAV files in stand alone documents, so just don't
- // run the test on non-video content types.
- var tag = getMajorMimeType(test.type);
- if (tag != "video" || !document.createElement("video").canPlayType(test.type))
- continue;
+ // We can't play WAV files in stand alone documents, so just don't
+ // run the test on non-video content types.
+ if (getMajorMimeType(test.type) != "video" ||
+ !document.createElement("video").canPlayType(test.type)) {
+ continue;
+ }
- let f = document.createElement("iframe");
- f.src = test.name;
- f._test = test;
- f.id = "frame" + i;
- iframes.push(f);
- document.body.appendChild(f);
-}
+ let f = document.createElement("iframe");
+ f.src = test.name;
+ document.body.appendChild(f);
+ info(`waiting iframe loading ${test.name}`);
+ await new Promise(r => f.onload = r);
-function filename(uri) {
- return uri.substr(uri.lastIndexOf("/")+1);
-}
-
-function doTest()
-{
- for (let i=0; i<iframes.length; ++i) {
- let f = document.getElementById(iframes[i].id);
- var v = f.contentDocument.body.firstChild;
+ const v = f.contentDocument.body.firstChild;
is(v.tagName.toLowerCase(), "video", "Is video element");
- var src = filename(v.currentSrc);
- is(src, iframes[i]._test.name, "Name ("+src+") should match ("+iframes[i]._test.name+")");
- is(v.controls, true, "Controls set (" + src + ")");
- is(v.autoplay, true, "Autoplay set (" + src + ")");
+ const src = filename(v.currentSrc);
+ is(src, test.name, `Name (${src}) should match (${test.name})`);
+ is(v.controls, true, `Controls set (${src})`);
+ is(v.autoplay, true, `Autoplay set (${src})`);
}
- SimpleTest.finish();
-}
+});
-if (!iframes.length) {
- todo(false, "No types supported");
-} else {
- SimpleTest.waitForExplicitFinish();
+// Helper function
+function filename(uri) {
+ return uri.substr(uri.lastIndexOf("/")+1);
}
</script>
-</pre>
</body>
</html>