media-src-7_3.sub.html (1704B)
1 <!DOCTYPE HTML> 2 <html> 3 <head> 4 <title>Video track src attribute must match src list - positive test</title> 5 <meta http-equiv="Content-Security-Policy" content="script-src * 'unsafe-inline'; media-src 'self' {{domains[www]}}:{{ports[http][0]}};"> 6 <script src='/resources/testharness.js'></script> 7 <script src='/resources/testharnessreport.js'></script> 8 </head> 9 <body> 10 <h1>Video track src attribute must match src list - positive test</h1> 11 <div id='log'></div> 12 13 <script> 14 var source_test = async_test("In-policy track element"); 15 16 var trackURL = location.protocol + "//{{domains[www]}}:{{ports[http][0]}}/media/foo.vtt"; 17 18 var t_spv = async_test("Should not fire policy violation events"); 19 var test_count = 1; 20 window.addEventListener("securitypolicyviolation", t_spv.unreached_func("Should not have fired any event")); 21 22 function media_loaded(t) { 23 t.done(); 24 if (--test_count <= 0) { 25 t_spv.done(); 26 } 27 } 28 29 function media_error_handler(t) { 30 t.step( function () { 31 assert_unreached("Error handler called for allowed track source."); 32 }); 33 t.done(); 34 } 35 </script> 36 37 <video id="videoObject" width="320" height="240" controls 38 onloadeddata="media_loaded(source_test)" crossorigin> 39 <source id="audioSourceObject" 40 type="video/webm" 41 src="/media/A4.webm"> 42 <track id="trackObject" 43 kind="subtitles" 44 srclang="en" 45 label="English" 46 onerror="media_error_handler(source_test)"> 47 </video> 48 <script> 49 document.getElementById("trackObject").src = trackURL; 50 </script> 51 52 </body> 53 </html>