blob: 8184189b05a697b3bd94cb727d8028d3bf10a7fd [file] [log] [blame]
<!doctype html>
<title>TextTrackCueList.getCueById</title>
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<div id=log></div>
<script>
test(function(){
var video = document.createElement('video');
var t = video.addTextTrack('subtitles');
document.body.appendChild(video);
var cues = t.cues;
var c = new VTTCue(0, 1, 'text1');
t.addCue(c);
assert_equals(cues.getCueById(""), null, '""');
assert_equals(cues.getCueById(null), null, 'null');
assert_equals(cues.getCueById(undefined), null, 'undefined');
}, document.title+ ', no id');
test(function(){
var video = document.createElement('video');
var t = video.addTextTrack('subtitles');
document.body.appendChild(video);
var cues = t.cues;
var c = new VTTCue(0, 1, 'text1');
c.id = 'foo';
t.addCue(c);
assert_equals(cues.getCueById(""), null, '""');
assert_equals(cues.getCueById("foo"), c, '"foo"');
assert_equals(cues.getCueById({toString:function(){return "foo"}}), c, 'object');
}, document.title+ ', id foo');
test(function(){
var video = document.createElement('video');
var t = video.addTextTrack('subtitles');
document.body.appendChild(video);
var cues = t.cues;
var c = new VTTCue(0, 1, 'text1');
c.id = '1';
t.addCue(c);
assert_equals(cues.getCueById(""), null, '""');
assert_equals(cues.getCueById("1"), c, '"1"');
assert_equals(cues.getCueById(1), c, '1');
}, document.title+ ', no 1');
test(function(){
var video = document.createElement('video');
var t = video.addTextTrack('subtitles');
document.body.appendChild(video);
var cues = t.cues;
var c = new VTTCue(0, 1, 'text1');
c.id = 'a\u0000b';
t.addCue(c);
assert_equals(cues.getCueById("a\u0000b"), c, '"a\\u0000b"');
assert_equals(cues.getCueById("a"), null, '"a"');
}, document.title+ ', id a\\u0000b');
</script>