OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html> | 2 <html> |
3 <head> | 3 <head> |
4 <title>NeedKey</title> | 4 <title>NeedKey</title> |
5 <script src="encrypted-media-utils.js"></script> | 5 <script src="encrypted-media-utils.js"></script> |
6 <script src="../w3c-media-utils.js"></script> | 6 <script src="../w3c-media-utils.js"></script> |
7 <script src="../../resources/testharness.js"></script> | 7 <script src="../../resources/testharness.js"></script> |
8 <script src="../../resources/testharnessreport.js"></script> | 8 <script src="../../resources/testharnessreport.js"></script> |
9 </head> | 9 </head> |
10 <body> | 10 <body> |
11 <video id="testVideo" controls></video> | 11 <video id="testVideo" controls></video> |
12 <div id="log"></div> | 12 <div id="log"></div> |
13 <p>Test that needkey event is fired on an encrypted media file.</p> | 13 <p>Test that needkey event is fired on an encrypted media file.</p> |
14 <script> | 14 <script> |
| 15 // Timeout for all tests to run. |
| 16 setup({ timeout: 60000 }); |
| 17 |
15 var expectedInitData = stringToUint8Array('0123456789012345'); | 18 var expectedInitData = stringToUint8Array('0123456789012345'); |
16 | 19 |
17 // Will get 2 identical events, one for audio, one for video. | 20 // Will get 2 identical events, one for audio, one for video. |
18 var expectedEvents = 2; | 21 var expectedEvents = 2; |
19 | 22 |
20 async_test(function(test) | 23 async_test(function(test) |
21 { | 24 { |
22 var video = document.getElementById("testVideo"); | 25 var video = document.getElementById("testVideo"); |
23 | 26 |
24 var onNeedKey = function(event) | 27 var onNeedKey = function(event) |
25 { | 28 { |
26 assert_equals(event.target, video); | 29 assert_equals(event.target, video); |
27 assert_true(event instanceof window.MediaKeyNeededEvent); | 30 assert_true(event instanceof window.MediaKeyNeededEvent); |
28 assert_equals(event.type, "needkey"); | 31 assert_equals(event.type, "needkey"); |
29 assert_equals(event.contentType, "video/webm"); | 32 assert_equals(event.contentType, "video/webm"); |
30 assert_array_equals(event.initData, expectedInitData); | 33 assert_array_equals(event.initData, expectedInitData); |
31 | 34 |
32 if (--expectedEvents == 0) | 35 if (--expectedEvents == 0) |
33 test.done(); | 36 test.done(); |
34 }; | 37 }; |
35 | 38 |
36 waitForEventAndRunStep("needkey", video, onNeedKey, test); | 39 waitForEventAndRunStep("needkey", video, onNeedKey, test); |
37 video.src = "../content/test-encrypted.webm"; | 40 video.src = "../content/test-encrypted.webm"; |
38 }, "Needkey fired on encrypted media file."); | 41 }, "Needkey fired on encrypted media file.", { timeout: 60000 }); |
39 </script> | 42 </script> |
40 </body> | 43 </body> |
41 </html> | 44 </html> |
OLD | NEW |