4 <title>Prefixed and unprefixed EME API
</title>
5 <script src=
"encrypted-media-utils.js"></script>
6 <script src=
"../../resources/testharness.js"></script>
7 <script src=
"../../resources/testharnessreport.js"></script>
10 <video id=
"testVideo"></video>
13 async_test(function(test
)
15 var video
= document
.getElementById('testVideo');
16 assert_not_equals(video
, null);
18 function loadStarted()
20 video
.webkitGenerateKeyRequest('webkit-org.w3.clearkey');
21 navigator
.requestMediaKeySystemAccess('org.w3.clearkey', [{}]).then(function(access
) {
22 assert_equals(access
.keySystem
, 'org.w3.clearkey');
23 return access
.createMediaKeys();
24 }).then(function(mediaKeys
) {
25 assert_not_equals(mediaKeys
, null);
26 assert_equals(typeof mediaKeys
.createSession
, 'function');
27 video
.setMediaKeys(mediaKeys
).then(function(result
) {
28 assert_unreached('setMediaKeys should have failed.');
30 assert_equals(error
.name
, 'InvalidStateError');
31 assert_not_equals(error
.message
, '');
34 }).catch(function(error
) {
35 forceTestFailureFromPromise(test
, error
);
39 video
.src
= '../content/test-encrypted.webm';
40 waitForEventAndRunStep('loadstart', video
, loadStarted
, test
);
41 }, 'Call unprefixed EME API after prefixed EME API.');