Chromium Code Reviews| Index: LayoutTests/media/encrypted-media/encrypted-media-keystatuses.html | 
| diff --git a/LayoutTests/media/encrypted-media/encrypted-media-keystatuses.html b/LayoutTests/media/encrypted-media/encrypted-media-keystatuses.html | 
| index 6283c1e5cce50d3f05a9d9abfcf85a5fe2380e27..c1c310bf76535352556e98f3fee326868f08a12a 100644 | 
| --- a/LayoutTests/media/encrypted-media/encrypted-media-keystatuses.html | 
| +++ b/LayoutTests/media/encrypted-media/encrypted-media-keystatuses.html | 
| @@ -13,8 +13,10 @@ | 
| // Even though key ids are uint8, using printable values so that | 
| // they can be verified easily. | 
| - var key1 = stringToUint8Array('123'); | 
| - var key2 = stringToUint8Array('4567890'); | 
| + var key1String = '123'; | 
| + var key2String = '4567890'; | 
| + var key1 = stringToUint8Array(key1String); | 
| + var key2 = stringToUint8Array(key2String); | 
| var rawKey1 = new Uint8Array([0xeb, 0xdd, 0x62, 0xf1, 0x68, 0x14, 0xd2, 0x7b, | 
| 0x68, 0xef, 0x12, 0x2a, 0xfc, 0xe4, 0xae, 0x3c]); | 
| var rawKey2 = new Uint8Array([0x3c, 0xae, 0xe4, 0xfc, 0x2a, 0x12, 0xef, 0x68, | 
| @@ -37,29 +39,62 @@ | 
| function processKeyStatusesChange(event) | 
| { | 
| + // Two keys added, so both should show up in |keyStatuses|. | 
| assert_equals(mediaKeySession.keyStatuses.size, 2); | 
| - consoleWrite("for (var entry of keyStatuses)"); | 
| + dumpKeyStatuses(mediaKeySession.keyStatuses); | 
| + | 
| + // Check |keyStatuses| for 2 entries. | 
| + var result = []; | 
| for (var entry of mediaKeySession.keyStatuses) { | 
| - consoleWrite(arrayBufferAsString(entry[0]) + ", " + entry[1]); | 
| + result.push({ key: arrayBufferAsString(entry[0]), value: entry[1] }); | 
| 
 
sandersd (OOO until July 31)
2015/01/30 23:22:46
I think 'result[arrayBufferAsString(entry[0])] = e
 
 | 
| } | 
| - consoleWrite("for (var key of keyStatuses.keys())"); | 
| + assert_object_equals(result, | 
| + [{ key: key1String, value: 'usable'}, { key: key2String, value: 'usable'}], | 
| + 'keyStatuses fails'); | 
| + | 
| + // |keyStatuses| must contain both keys. | 
| + result = []; | 
| for (var key of mediaKeySession.keyStatuses.keys()) { | 
| - consoleWrite(arrayBufferAsString(key)); | 
| + result.push(arrayBufferAsString(key)); | 
| } | 
| - consoleWrite("for (var value of keyStatuses.values())"); | 
| + assert_array_equals(result, | 
| + [key1String, key2String], | 
| + 'keyStatuses.keys() fails'); | 
| + | 
| + // Both values in |mediaKeySession| should be 'usable'. | 
| + result = []; | 
| for (var value of mediaKeySession.keyStatuses.values()) { | 
| - consoleWrite(value); | 
| + result.push(value); | 
| } | 
| - consoleWrite("for (var entry of keyStatuses.entries())"); | 
| + assert_array_equals(result, | 
| + ['usable', 'usable'], | 
| + 'keyStatuses.values() fails'); | 
| + | 
| + // Check |keyStatuses.entries()|. | 
| + result = []; | 
| for (var entry of mediaKeySession.keyStatuses.entries()) { | 
| - consoleWrite(arrayBufferAsString(entry[0]) + ", " + entry[1]); | 
| + result.push({ key: arrayBufferAsString(entry[0]), value: entry[1] }); | 
| } | 
| + assert_object_equals(result, | 
| + [{ key: key1String, value: 'usable'}, { key: key2String, value: 'usable'}], | 
| + 'keyStatuses.entries() fails'); | 
| + | 
| + // forEach() should return both entries. | 
| + result = []; | 
| + mediaKeySession.keyStatuses.forEach(function(value, key, map) { | 
| + result.push({ key: arrayBufferAsString(key), value: value }); | 
| + }); | 
| + assert_object_equals(result, | 
| + [{ key: key1String, value: 'usable'}, { key: key2String, value: 'usable'}], | 
| + 'keyStatuses.forEach() fails'); | 
| + | 
| assert_true(mediaKeySession.keyStatuses.has(key1)); | 
| assert_true(mediaKeySession.keyStatuses.has(key2)); | 
| assert_false(mediaKeySession.keyStatuses.has(stringToUint8Array('123456'))); | 
| assert_equals(mediaKeySession.keyStatuses.get(key1), 'usable'); | 
| assert_equals(mediaKeySession.keyStatuses.get(key2), 'usable'); | 
| assert_equals(mediaKeySession.keyStatuses.get(stringToUint8Array('123456')), undefined); | 
| + | 
| test.done(); | 
| } |