tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

addCue.html (2408B)


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