OLD | NEW |
1 <!doctype html> | 1 <!doctype html> |
2 <title>VTTCue.align</title> | 2 <title>VTTCue.align</title> |
| 3 <link rel="help" href="https://w3c.github.io/webvtt/#dom-vttcue-align"> |
3 <script src=/resources/testharness.js></script> | 4 <script src=/resources/testharness.js></script> |
4 <script src=/resources/testharnessreport.js></script> | 5 <script src=/resources/testharnessreport.js></script> |
5 <div id=log></div> | 6 <div id=log></div> |
6 <script> | 7 <script> |
7 test(function(){ | 8 test(function(){ |
8 var video = document.createElement('video'); | 9 var video = document.createElement('video'); |
9 document.body.appendChild(video); | 10 document.body.appendChild(video); |
10 var c1 = new VTTCue(0, 1, 'text1'); | 11 |
11 assert_equals(c1.align, 'center'); | 12 var cue = new VTTCue(0, 1, 'text'); |
| 13 assert_equals(cue.align, 'center'); |
| 14 |
12 var track = document.createElement('track'); | 15 var track = document.createElement('track'); |
13 var t = track.track; | 16 var t = track.track; |
14 t.addCue(c1); | 17 t.addCue(cue); |
15 assert_equals(c1.align, 'center'); | 18 |
| 19 assert_equals(cue.align, 'center'); |
| 20 |
16 video.appendChild(track); | 21 video.appendChild(track); |
17 assert_equals(c1.align, 'center'); | 22 assert_equals(cue.align, 'center'); |
| 23 |
18 t.mode = 'showing'; | 24 t.mode = 'showing'; |
19 assert_equals(c1.align, 'center'); | 25 assert_equals(cue.align, 'center'); |
20 c1.align = 'start'; | 26 |
21 assert_equals(c1.align, 'start'); | 27 cue.align = 'start'; |
22 c1.align = 'end'; | 28 assert_equals(cue.align, 'start'); |
23 assert_equals(c1.align, 'end'); | 29 |
24 c1.align = 'start\u0000'; | 30 cue.align = 'end'; |
25 assert_equals(c1.align, 'end'); | 31 assert_equals(cue.align, 'end'); |
| 32 |
| 33 ['start\u0000', 'centre', 'middle'].forEach(function(invalid) { |
| 34 cue.align = invalid; |
| 35 assert_equals(cue.align, 'end'); |
| 36 }); |
26 }, document.title+', script-created cue'); | 37 }, document.title+', script-created cue'); |
27 | 38 |
28 var t_parsed = async_test(document.title+', parsed cue'); | 39 var t_parsed = async_test(document.title+', parsed cue'); |
29 t_parsed.step(function(){ | 40 t_parsed.step(function(){ |
30 var video = document.createElement('video'); | 41 var video = document.createElement('video'); |
31 document.body.appendChild(video); | 42 document.body.appendChild(video); |
32 var t = document.createElement('track'); | 43 var t = document.createElement('track'); |
33 t.onload = this.step_func(function(){ | 44 t.onload = this.step_func(function(){ |
34 var c1 = t.track.cues[0]; | 45 var c1 = t.track.cues[0]; |
35 var c2 = t.track.cues[1]; | 46 var c2 = t.track.cues[1]; |
36 var c3 = t.track.cues[2]; | 47 var c3 = t.track.cues[2]; |
37 var c4 = t.track.cues[3]; | 48 var c4 = t.track.cues[3]; |
38 assert_equals(c1.align, 'center'); | 49 assert_equals(c1.align, 'center'); |
39 assert_equals(c2.align, 'start'); | 50 assert_equals(c2.align, 'start'); |
40 assert_equals(c3.align, 'center'); | 51 assert_equals(c3.align, 'center'); |
41 assert_equals(c4.align, 'end'); | 52 assert_equals(c4.align, 'end'); |
42 this.done(); | 53 this.done(); |
43 }); | 54 }); |
44 t.onerror = this.step_func(function() { | 55 t.onerror = this.step_func(function() { |
45 assert_unreached('got error event'); | 56 assert_unreached('got error event'); |
46 }); | 57 }); |
47 t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --> 00:0
0:00.001\ntest\n\n'+ | 58 t.src = 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --> 00:0
0:00.001\ntest\n\n'+ |
48 '00:00:00.000 --> 00:00:00.001 a
lign:start\ntest\n\n'+ | 59 '00:00:00.000 --> 00:00:00.001 a
lign:start\ntest\n\n'+ |
49 '00:00:00.000 --> 00:00:00.001 a
lign:center\ntest\n\n'+ | 60 '00:00:00.000 --> 00:00:00.001 a
lign:center\ntest\n\n'+ |
50 '00:00:00.000 --> 00:00:00.001 a
lign:end\ntest'); | 61 '00:00:00.000 --> 00:00:00.001 a
lign:end\ntest'); |
51 t.track.mode = 'showing'; | 62 t.track.mode = 'showing'; |
52 video.appendChild(t); | 63 video.appendChild(t); |
53 }); | 64 }); |
54 </script> | 65 </script> |
OLD | NEW |