Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(437)

Side by Side Diff: LayoutTests/media/encrypted-media/encrypted-media-events.html

Issue 1004843003: Use requestMediaKeySystemAccess() to check type support in EME layout tests (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Move vars Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <title>Verify v2 events</title> 4 <title>Verify v2 events</title>
5 <script src="encrypted-media-utils.js"></script> 5 <script src="encrypted-media-utils.js"></script>
6 <script src="../../resources/testharness.js"></script> 6 <script src="../../resources/testharness.js"></script>
7 <script src="../../resources/testharnessreport.js"></script> 7 <script src="../../resources/testharnessreport.js"></script>
8 </head> 8 </head>
9 <body> 9 <body>
10 <div id="log"></div> 10 <div id="log"></div>
11 <script> 11 <script>
12 // Currently Clear Key only generates aynchronous "message" and 12 // Currently Clear Key only generates aynchronous "message" and
13 // "keychange" events. 13 // "keychange" events.
14 async_test(function(test) 14 async_test(function(test)
15 { 15 {
16 var initDataType;
17 var initData;
16 var mediaKeySession; 18 var mediaKeySession;
17 var rawKey = new Uint8Array([0xeb, 0xdd, 0x62, 0xf1, 0x68, 0x14, 0xd2, 0x7b, 19 var rawKey = new Uint8Array([0xeb, 0xdd, 0x62, 0xf1, 0x68, 0x14, 0xd2, 0x7b,
18 0x68, 0xef, 0x12, 0x2a, 0xfc, 0xe4, 0xae, 0x3c]); 20 0x68, 0xef, 0x12, 0x2a, 0xfc, 0xe4, 0xae, 0x3c]);
19 21
20 function processMessage(event) 22 function processMessage(event)
21 { 23 {
22 assert_true(event instanceof window.MediaKeyMessageEvent); 24 assert_true(event instanceof window.MediaKeyMessageEvent);
23 assert_equals(event.target, mediaKeySession); 25 assert_equals(event.target, mediaKeySession);
24 assert_equals(event.type, 'message'); 26 assert_equals(event.type, 'message');
25 assert_equals(event.messageType, 'license-request'); 27 assert_equals(event.messageType, 'license-request');
26 28
27 var keyId = extractSingleKeyIdFromMessage(event.message); 29 var keyId = extractSingleKeyIdFromMessage(event.message);
28 var jwkSet = stringToUint8Array(createJWKSet(createJWK(keyId , rawKey))); 30 var jwkSet = stringToUint8Array(createJWKSet(createJWK(keyId , rawKey)));
29 31
30 waitForEventAndRunStep('keystatuseschange', mediaKeySession, test.step_func(processKeyStatusesChange), test); 32 waitForEventAndRunStep('keystatuseschange', mediaKeySession, test.step_func(processKeyStatusesChange), test);
31 33
32 mediaKeySession.update(jwkSet).catch(test.step_func(function (error) { 34 mediaKeySession.update(jwkSet).catch(test.step_func(function (error) {
33 forceTestFailureFromPromise(test, error); 35 forceTestFailureFromPromise(test, error);
34 })); 36 }));
35 } 37 }
36 38
37 function processKeyStatusesChange(event) 39 function processKeyStatusesChange(event)
38 { 40 {
39 assert_true(event instanceof Event); 41 assert_true(event instanceof Event);
40 assert_equals(event.target, mediaKeySession); 42 assert_equals(event.target, mediaKeySession);
41 assert_equals(event.type, 'keystatuseschange'); 43 assert_equals(event.type, 'keystatuseschange');
42 test.done(); 44 test.done();
43 } 45 }
44 46
45 navigator.requestMediaKeySystemAccess('org.w3.clearkey', [{}]).t hen(function(access) { 47 getSupportedInitDataType().then(function(type) {
48 initDataType = type;
49 initData = getInitData(initDataType);
50 return navigator.requestMediaKeySystemAccess('org.w3.clearke y', [{}]);
51 }).then(function(access) {
46 return access.createMediaKeys(); 52 return access.createMediaKeys();
47 }).then(test.step_func(function(mediaKeys) { 53 }).then(test.step_func(function(mediaKeys) {
48 var initDataType = getInitDataType();
49 mediaKeySession = mediaKeys.createSession(); 54 mediaKeySession = mediaKeys.createSession();
50 waitForEventAndRunStep('message', mediaKeySession, test.step _func(processMessage), test); 55 waitForEventAndRunStep('message', mediaKeySession, test.step _func(processMessage), test);
51 return mediaKeySession.generateRequest(initDataType, getInit Data(initDataType)); 56 return mediaKeySession.generateRequest(initDataType, initDat a);
52 })).catch(test.step_func(function(error) { 57 })).catch(test.step_func(function(error) {
53 forceTestFailureFromPromise(test, error); 58 forceTestFailureFromPromise(test, error);
54 })); 59 }));
55 }, 'Verify v2 events.'); 60 }, 'Verify v2 events.');
56 </script> 61 </script>
57 </body> 62 </body>
58 </html> 63 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698