OLD | NEW |
1 <!doctype html> | 1 <!doctype html> |
2 <title>TextTrack.addCue()</title> | 2 <title>TextTrack.addCue()</title> |
3 <script src=../../../../../resources/testharness.js></script> | 3 <script src=../../../../../resources/testharness.js></script> |
4 <script src=../../../../../resources/testharnessreport.js></script> | 4 <script src=../../../../../resources/testharnessreport.js></script> |
5 <div id=log></div> | 5 <div id=log></div> |
6 <script> | 6 <script> |
7 setup(function(){ | 7 setup(function(){ |
8 window.video = document.createElement('video'); | 8 window.video = document.createElement('video'); |
9 document.body.appendChild(video); | 9 document.body.appendChild(video); |
10 }, {timeout:5000}); | 10 }, {timeout:5000}); |
11 test(function() { | 11 test(function() { |
12 var t1 = video.addTextTrack('subtitles'); | 12 var t1 = video.addTextTrack('subtitles'); |
13 var t2 = video.addTextTrack('subtitles'); | 13 var t2 = video.addTextTrack('subtitles'); |
14 var c1 = new TextTrackCue(0, 1, 'text1'); | 14 var c1 = new VTTCue(0, 1, 'text1'); |
15 t1.addCue(c1); | 15 t1.addCue(c1); |
16 t2.addCue(c1); | 16 t2.addCue(c1); |
17 assert_equals(c1.track, t2); | 17 assert_equals(c1.track, t2); |
18 }, document.title+', adding a cue to two different tracks'); | 18 }, document.title+', adding a cue to two different tracks'); |
19 test(function() { | 19 test(function() { |
20 var t1 = video.addTextTrack('subtitles'); | 20 var t1 = video.addTextTrack('subtitles'); |
21 var c1 = new TextTrackCue(0, 1, 'text1'); | 21 var c1 = new VTTCue(0, 1, 'text1'); |
22 t1.addCue(c1); | 22 t1.addCue(c1); |
23 assert_equals(c1.track, t1); | 23 assert_equals(c1.track, t1); |
24 t1.addCue(c1); | 24 t1.addCue(c1); |
25 assert_equals(c1.track, t1); | 25 assert_equals(c1.track, t1); |
26 }, document.title+', adding a cue to a track twice'); | 26 }, document.title+', adding a cue to a track twice'); |
27 test(function() { | 27 test(function() { |
28 var t1 = video.addTextTrack('subtitles'); | 28 var t1 = video.addTextTrack('subtitles'); |
29 var t2 = video.addTextTrack('subtitles'); | 29 var t2 = video.addTextTrack('subtitles'); |
30 var c1 = new TextTrackCue(0, 1, 'text1'); | 30 var c1 = new VTTCue(0, 1, 'text1'); |
31 t1.addCue(c1); | 31 t1.addCue(c1); |
32 assert_equals(c1.track, t1); | 32 assert_equals(c1.track, t1); |
33 t1.removeCue(c1); | 33 t1.removeCue(c1); |
34 assert_equals(c1.track, null); | 34 assert_equals(c1.track, null); |
35 t2.addCue(c1); | 35 t2.addCue(c1); |
36 assert_equals(c1.track, t2); | 36 assert_equals(c1.track, t2); |
37 }, document.title+', adding a removed cue to a different track'); | 37 }, document.title+', adding a removed cue to a different track'); |
38 test(function() { | 38 test(function() { |
39 var t1 = video.addTextTrack('subtitles'); | 39 var t1 = video.addTextTrack('subtitles'); |
40 var c1 = new TextTrackCue(0, 1, 'text1'); | 40 var c1 = new VTTCue(0, 1, 'text1'); |
41 t1.addCue(c1); | 41 t1.addCue(c1); |
42 assert_equals(t1.cues.length, 1, 't1.cues.length after first addition'); | 42 assert_equals(t1.cues.length, 1, 't1.cues.length after first addition'); |
43 t1.removeCue(c1); | 43 t1.removeCue(c1); |
44 assert_equals(t1.cues.length, 0, 't1.cues.length after removal'); | 44 assert_equals(t1.cues.length, 0, 't1.cues.length after removal'); |
45 t1.addCue(c1); | 45 t1.addCue(c1); |
46 assert_equals(t1.cues.length, 1, 't1.cues.length after second addition'); | 46 assert_equals(t1.cues.length, 1, 't1.cues.length after second addition'); |
47 }, document.title+', adding an associated but removed cue to the same track'); | 47 }, document.title+', adding an associated but removed cue to the same track'); |
48 | 48 |
49 var t = async_test(document.title+', adding a cue associated with a track elemen
t to other track'); | 49 var t = async_test(document.title+', adding a cue associated with a track elemen
t to other track'); |
50 t.step(function(){ | 50 t.step(function(){ |
51 var t1 = video.addTextTrack('subtitles'); | 51 var t1 = video.addTextTrack('subtitles'); |
52 var track = document.createElement('track'); | 52 var track = document.createElement('track'); |
53 track.onload = t.step_func(function(){ | 53 track.onload = t.step_func(function(){ |
54 var cue = track.track.cues[0]; | 54 var cue = track.track.cues[0]; |
55 track.track.removeCue(cue); | 55 track.track.removeCue(cue); |
56 t1.addCue(cue); | 56 t1.addCue(cue); |
57 assert_equals(cue.track, t1); | 57 assert_equals(cue.track, t1); |
58 t.done(); | 58 t.done(); |
59 }); | 59 }); |
60 track.src= 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --> 0
0:00:01.000\ntest\n'); | 60 track.src= 'data:text/vtt,'+encodeURIComponent('WEBVTT\n\n00:00:00.000 --> 0
0:00:01.000\ntest\n'); |
61 track.kind = 'subtitles'; | 61 track.kind = 'subtitles'; |
62 track.track.mode = 'hidden'; | 62 track.track.mode = 'hidden'; |
63 video.appendChild(track); | 63 video.appendChild(track); |
64 }); | 64 }); |
65 </script> | 65 </script> |
OLD | NEW |