Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 <!DOCTYPE html> | |
|
ddorwin
2014/01/13 19:08:38
We should start writing tests in a W3C test-compat
| |
| 2 <html> | |
| 3 <head> | |
| 4 <title>NeedKey</title> | |
| 5 <script src=../video-test.js></script> | |
| 6 <script> | |
| 7 function stringToUint8Array(str) | |
| 8 { | |
| 9 var arr=[]; | |
|
acolwell GONE FROM CHROMIUM
2014/01/13 18:19:04
nit: Add spaces around '=' here and elsewhere
jrummell
2014/01/13 19:01:32
Done. This function (and most of the code) was cop
ddorwin
2014/01/13 19:08:38
add spaces to all of this
jrummell
2014/01/13 22:43:44
Done.
| |
| 10 for(var i=0,j=str.length;i<j;++i) | |
|
acolwell GONE FROM CHROMIUM
2014/01/13 18:19:04
nit: add spaces around '<'
jrummell
2014/01/13 19:01:32
Done.
| |
| 11 arr[i]=str.charCodeAt(i); | |
| 12 return new Uint8Array(arr); | |
| 13 } | |
| 14 | |
| 15 var mediaKeys; | |
| 16 var mediaKeySession; | |
| 17 var initData = stringToUint8Array('mock'); | |
|
ddorwin
2014/01/13 19:08:38
Why "mock"?
jrummell
2014/01/13 22:43:44
Clone from encrypted-media-v2-events.html. Now tha
| |
| 18 var expectedInitData = stringToUint8Array('0123456789012345'); | |
| 19 var validKey = stringToUint8Array( | |
| 20 '{"keys":[{"kty":"oct","kid":"691i8WgU0nto7xIq/OSuPA","k":"MDEyM zQ1Njc4OTAxMjM0"}]}'); | |
| 21 var expectedEvents = 2; | |
| 22 | |
| 23 function runTest() | |
| 24 { | |
| 25 video = document.getElementsByTagName('video')[0]; | |
| 26 run('mediaKeys = new MediaKeys("org.w3.clearkey")'); | |
|
acolwell GONE FROM CHROMIUM
2014/01/13 18:19:04
nit: Why is this and the line below in a run()? Se
jrummell
2014/01/13 19:01:32
run() logs the statement and catches exceptions. I
acolwell GONE FROM CHROMIUM
2014/01/13 19:19:39
Ok. I'm not a fan of this style, but since it appe
| |
| 27 run('mediaKeySession = mediaKeys.createSession("video/webm", ini tData)'); | |
| 28 video.setMediaKeys(mediaKeys); | |
|
xhwang
2014/01/13 18:42:40
Based on the spec, we don't need a MediaKeys objec
jrummell
2014/01/13 19:01:32
Done.
| |
| 29 video.src="../content/test-encrypted.webm"; | |
|
ddorwin
2014/01/13 19:08:38
spaces
jrummell
2014/01/13 22:43:44
Done.
| |
| 30 | |
| 31 // Will get 2 identical events, one for audio, one for video. | |
|
ddorwin
2014/01/13 19:08:38
Would this comment be better above line 21?
jrummell
2014/01/13 22:43:44
Sure.
| |
| 32 waitForEvent('needkey', needKey, false, false, video, false); | |
| 33 } | |
| 34 | |
| 35 function needKey(event) | |
| 36 { | |
| 37 testExpected("event.target", video); | |
| 38 testExpected("event instanceof window.MediaKeyNeededEvent", true ); | |
| 39 testExpected("event.type", "needkey"); | |
| 40 | |
| 41 // Following line commented out as contentType not currently set . | |
|
ddorwin
2014/01/13 19:08:38
FIXME: Enable the following line when...
jrummell
2014/01/13 22:43:44
Done.
| |
| 42 // testExpected("event.contentType", "video/webm"); | |
| 43 testArraysEqual("event.initData", expectedInitData); | |
| 44 | |
| 45 if (--expectedEvents == 0) | |
| 46 endTest(); | |
| 47 } | |
| 48 </script> | |
| 49 </head> | |
| 50 <body onload="runTest()"> | |
| 51 <p>This tests that the 'needkey' event is generated.</p> | |
| 52 <video></video> | |
| 53 </body> | |
| 54 </html> | |
| OLD | NEW |