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

Side by Side Diff: third_party/WebKit/LayoutTests/media/track/track-kind.html

Issue 1947033002: Change "invalid value default" for HTMLTrackElement 'kind' to "metadata" (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 7 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 unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <title>Tests that the "kind" attribute is set properly and that cues are only vi sible when "kind" is set to "captions" or "subtitles".</title> 2 <title>Tests that the "kind" attribute is set properly</title>
3 <video> 3 <video>
4 <track src="captions-webvtt/metadata.vtt" default> 4 <track src="captions-webvtt/metadata.vtt" default>
5 </video> 5 </video>
6 <script src="../media-file.js"></script> 6 <script src="../media-file.js"></script>
7 <script src="../media-controls.js"></script> 7 <script src="../media-controls.js"></script>
8 <script src="../../resources/testharness.js"></script> 8 <script src="../../resources/testharness.js"></script>
9 <script src="../../resources/testharnessreport.js"></script> 9 <script src="../../resources/testharnessreport.js"></script>
10 <script> 10 <script>
11 async_test(function(t) { 11 async_test(function(t) {
12 var video = document.querySelector("video"); 12 var video = document.querySelector("video");
13 var trackElement = document.querySelector("track"); 13 var trackElement = document.querySelector("track");
14 14
15 video.oncanplaythrough = t.step_func(testKind); 15 video.oncanplaythrough = t.step_func(testKind);
16 trackElement.onload = t.step_func(testKind); 16 trackElement.onload = t.step_func(testKind);
17 17
18 video.src = findMediaFile("video", "../content/counting"); 18 video.src = findMediaFile("video", "../content/counting");
19 19
20 var eventCount = 0; 20 var eventCount = 0;
21 function testKind() { 21 function testKind() {
22 eventCount++; 22 eventCount++;
23 if (eventCount != 2) 23 if (eventCount != 2)
24 return; 24 return;
25 25
26 // Test default attribute value. 26 // Test default attribute value.
27 assert_equals(trackElement.getAttribute("kind"), null); 27 assert_equals(trackElement.getAttribute("kind"), null);
28 assert_equals(trackElement.kind, "subtitles"); 28 assert_equals(trackElement.kind, "subtitles");
29 assert_equals(video.textTracks[0].kind, "subtitles"); 29 assert_equals(video.textTracks[0].kind, "subtitles");
30 30
31 // Set to bogus value, should return default. 31 // Set to bogus value, should return invalid value default.
32 32
33 // Set via DOM. 33 // Set via DOM.
34 var value = "english-metadata" 34 var value = "english-metadata"
35 trackElement.removeAttribute("kind"); 35 trackElement.removeAttribute("kind");
36 trackElement.kind = value; 36 trackElement.kind = value;
37 assert_equals(trackElement.getAttribute("kind"), value); 37 assert_equals(trackElement.getAttribute("kind"), value);
38 assert_equals(trackElement.kind, "subtitles"); 38 assert_equals(trackElement.kind, "metadata");
39 assert_equals(trackElement.track.kind, "subtitles"); 39 assert_equals(trackElement.track.kind, "metadata");
40 40
41 // Set via attribute. 41 // Set via attribute.
42 trackElement.removeAttribute("kind"); 42 trackElement.removeAttribute("kind");
43 trackElement.setAttribute("kind", value); 43 trackElement.setAttribute("kind", value);
44 assert_equals(trackElement.kind, "subtitles");
45 assert_equals(trackElement.track.kind, "subtitles");
46 assert_equals(trackElement.getAttribute("kind"), value); 44 assert_equals(trackElement.getAttribute("kind"), value);
45 assert_equals(trackElement.kind, "metadata");
46 assert_equals(trackElement.track.kind, "metadata");
47 47
48 // Set to known values. 48 // Set to known values.
49 setKindAndCheck("subtitles", true); 49 setKindAndCheck("subtitles");
50 50 setKindAndCheck("captions");
51 setKindAndCheck("captions", true); 51 setKindAndCheck("descriptions");
52 52 setKindAndCheck("chapters");
53 setKindAndCheck("descriptions", false); 53 setKindAndCheck("metadata");
54
55 setKindAndCheck("chapters", false);
56
57 setKindAndCheck("metadata", false);
58 54
59 t.done(); 55 t.done();
60 } 56 }
61 57
62 function setKindAndCheck(value, cueIsVisible) { 58 function setKindAndCheck(value) {
63 // set via DOM. 59 // set via DOM.
64 trackElement.removeAttribute("kind"); 60 trackElement.removeAttribute("kind");
65 trackElement.kind = value; 61 trackElement.kind = value;
66 assert_equals(trackElement.getAttribute("kind"), value); 62 assert_equals(trackElement.getAttribute("kind"), value);
67 assert_equals(trackElement.kind, value); 63 assert_equals(trackElement.kind, value);
68 assert_equals(trackElement.track.kind, value); 64 assert_equals(trackElement.track.kind, value);
69 // Set via attribute. 65 // Set via attribute.
70 trackElement.removeAttribute("kind"); 66 trackElement.removeAttribute("kind");
71 trackElement.setAttribute("kind", value); 67 trackElement.setAttribute("kind", value);
72 assert_equals(trackElement.kind, value); 68 assert_equals(trackElement.kind, value);
73 assert_equals(trackElement.track.kind, value); 69 assert_equals(trackElement.track.kind, value);
74 assert_equals(trackElement.getAttribute("kind"), value); 70 assert_equals(trackElement.getAttribute("kind"), value);
75
76 if (cueIsVisible) {
77 assert_equals(textTrackDisplayElement(video, "display").innerText, " Lorem ipsum dolor sit amet, ");
78 } else {
79 assert_throws(null, function() {
80 textTrackDisplayElement(video, "display");
81 });
82 }
83 } 71 }
84 }); 72 });
85 </script> 73 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698