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