Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Unified Diff: third_party/WebKit/LayoutTests/media/video-defaultmuted.html

Issue 2126753002: Convert video-[default, size, timeupdate]* tests to testharness.js (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/media/video-defaultmuted.html
diff --git a/third_party/WebKit/LayoutTests/media/video-defaultmuted.html b/third_party/WebKit/LayoutTests/media/video-defaultmuted.html
index f58e5ce8d50c295243ea2852b6b66a012aec4c6b..179f996e4cb008f1785141f433987c4f14911351 100644
--- a/third_party/WebKit/LayoutTests/media/video-defaultmuted.html
+++ b/third_party/WebKit/LayoutTests/media/video-defaultmuted.html
@@ -1,92 +1,50 @@
-<!doctype html>
-<html>
- <head>
- <!-- TODO(foolip): Convert test to testharness.js. crbug.com/588956
- (Please avoid writing new tests using video-test.js) -->
- <script src=video-test.js></script>
- <script src=media-file.js></script>
- <script>
- var index = 0;
-
- function testMuted(expectedMuted, expectedDefaultMuted)
- {
- testExpected("video.muted", expectedMuted);
- testExpected("video.defaultMuted", expectedDefaultMuted);
- }
-
- function test(defaultMuted)
- {
- consoleWrite("<br><br><b>*** Test <em>" + (defaultMuted ? "with" : "without") + "</em> 'muted' content attribute</b><br>");
-
- run("video = document.createElement('video')");
- run("video.setAttribute('controls', 'controls')");
- video.setAttribute('width', '300');
- if (defaultMuted)
- run("video.setAttribute('muted', 'muted')");
- document.getElementById('parent').appendChild(video);
-
- consoleWrite("<br>*** Test before setting src, IDL attribute should default to false");
- testMuted(false, defaultMuted);
-
- var loadedmetadata = function(evt)
- {
- consoleWrite("<br>EVENT(" + evt.type + ")");
-
- consoleWrite("<br>*** After setting url, content attribute should have set IDL attribute");
- testMuted(defaultMuted, defaultMuted);
-
- consoleWrite("<br>*** Change 'defaultMuted', IDL attribute should not change but content attribute should.");
- var newDefaultMuted = !defaultMuted;
- run("video.defaultMuted = " + newDefaultMuted);
- testMuted(defaultMuted, newDefaultMuted);
- testExpected("video.hasAttribute('muted')", newDefaultMuted);
-
- consoleWrite("<br>*** Change 'muted' IDL attribute, content attribute should not change");
- run("video.muted = false");
- testMuted(false, newDefaultMuted);
- testExpected("video.hasAttribute('muted')", newDefaultMuted);
-
- var action = defaultMuted ? "Remove" : "Add";
- consoleWrite("<br>*** " + action + " 'muted' content attribute, it should have no effect on IDL attribute");
- if (defaultMuted)
- run("video.removeAttribute('muted')");
- else
- run("video.setAttribute('muted', 'muted')");
- testMuted(false, video.hasAttribute('muted'));
-
- runNextTest();
- }
- video.addEventListener('loadedmetadata', loadedmetadata);
- video.src = findMediaFile("audio", "content/test");
- }
-
- function runNextTest()
- {
- if (video) {
- video.parentNode.removeChild(video);
- video = null;
- }
-
- switch (++index)
- {
- case 1:
- test(true);
- break;
- case 2:
- test(false);
- break;
- case 3:
- consoleWrite("");
- endTest();
- break;
- }
- }
-
- </script>
- </head>
-
- <body onload="runNextTest()">
- <div id="parent"></div>
- <p>Test 'muted' content attribute<p>
- </body>
-</html>
+<!DOCTYPE html>
+<title>Test "muted" content attribute.</title>
+<script src="../resources/testharness.js"></script>
+<script src="../resources/testharnessreport.js"></script>
+<script src="media-file.js"></script>
+<script>
+function test_muted_content_attribute(defaultMuted) {
+ async_test(function(t) {
+ var video = document.createElement("video");
+ if (defaultMuted)
+ video.setAttribute("muted", "muted");
+
+ // Test before setting src, IDL attribute should default to false.
+ testMuted(false, defaultMuted);
+
+ video.onloadedmetadata = t.step_func_done(function() {
+ // After setting url, content attribute should have set IDL attribute.
foolip 2016/07/06 09:22:22 This is actually wrong per spec, can you link to h
Srirama 2016/07/06 15:03:45 Done.
+ testMuted(defaultMuted, defaultMuted);
+
+ // Change "defaultMuted", IDL attribute should not change but content attribute should.
+ var newDefaultMuted = !defaultMuted;
+ video.defaultMuted = newDefaultMuted;
+ testMuted(defaultMuted, newDefaultMuted);
+ assert_equals(video.hasAttribute("muted"), newDefaultMuted);
+
+ // Change "muted" IDL attribute, content attribute should not change.
+ video.muted = false;
+ testMuted(false, newDefaultMuted);
+ assert_equals(video.hasAttribute("muted"), newDefaultMuted);
+
+ // Removing/adding "muted" content attribute should have no effect on IDL attribute.
+ if (defaultMuted)
+ video.removeAttribute("muted");
+ else
+ video.setAttribute("muted", "muted");
+ testMuted(false, video.hasAttribute("muted"));
+ });
+
+ function testMuted(expectedMuted, expectedDefaultMuted) {
+ assert_equals(video.muted, expectedMuted);
foolip 2016/07/06 09:22:22 Can you inline these two asserts everywhere instea
Srirama 2016/07/06 15:03:45 Done.
+ assert_equals(video.defaultMuted, expectedDefaultMuted);
+ }
+
+ video.src = findMediaFile("audio", "content/test");
+ }, "Test 'muted' content attribute with default value: " + (defaultMuted ? "On" : "Off"));
+}
+
+test_muted_content_attribute(true);
foolip 2016/07/06 09:22:22 I think the structure here is not as clear as it c
Srirama 2016/07/06 15:03:45 Done.
+test_muted_content_attribute(false);
+</script>

Powered by Google App Engine
This is Rietveld 408576698