Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / WebKit / LayoutTests / media / encrypted-media / encrypted-media-clear-key-invalid-license.html
blob815d13415320a89f50beef95ff732a25029ed27a
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <title>Invalid Clear Key License.</title>
5 <script src="encrypted-media-utils.js"></script>
6 <script src="../../resources/testharness.js"></script>
7 <script src="../../resources/testharnessreport.js"></script>
8 </head>
9 <body>
10 <div id="log"></div>
11 <script>
12 async_test(function(test)
14 var initDataType;
15 var initData;
16 var invalidLicense = new Uint8Array(
17 [0x00, 0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77]);
19 function handleMessage(event) {
20 event.target.update(invalidLicense).then(function(event) {
21 assert_unreached('Error: update() succeeded unexpectedly.');
22 test.done();
23 }).catch(function(error) {
24 assert_equals(error.name, 'InvalidAccessError');
25 test.done();
26 });
29 getSupportedInitDataType().then(function(type) {
30 initDataType = type;
31 initData = getInitData(initDataType);
32 return navigator.requestMediaKeySystemAccess('org.w3.clearkey', [{}]);
33 }).then(function(access) {
34 return access.createMediaKeys();
35 }).then(function(mediaKeys) {
36 var keySession = mediaKeys.createSession();
37 keySession.addEventListener('message', handleMessage, false);
38 keySession.generateRequest(initDataType, initData);
39 }).catch(function(error) {
40 forceTestFailureFromPromise(test, error);
41 });
42 }, 'Invalid Clear Key License.');
43 </script>
44 </body>
45 </html>