| Index: LayoutTests/media/encrypted-media/encrypted-media-utils.js
 | 
| diff --git a/LayoutTests/media/encrypted-media/encrypted-media-utils.js b/LayoutTests/media/encrypted-media/encrypted-media-utils.js
 | 
| index 3fe4b1f0d312f5bd3488828623b4c28f82561055..dd3b402402373ca9b8c70cd1a5719806098e1840 100644
 | 
| --- a/LayoutTests/media/encrypted-media/encrypted-media-utils.js
 | 
| +++ b/LayoutTests/media/encrypted-media/encrypted-media-utils.js
 | 
| @@ -109,6 +109,55 @@ function arrayBufferAsString(buffer)
 | 
|      return String.fromCharCode.apply(null, new Uint8Array(buffer));
 | 
|  }
 | 
|  
 | 
| +function dumpKeyStatuses(keyStatuses)
 | 
| +{
 | 
| +    consoleWrite("for (var entry of keyStatuses)");
 | 
| +    for (var entry of keyStatuses) {
 | 
| +        consoleWrite(arrayBufferAsString(entry[0]) + ", " + entry[1]);
 | 
| +    }
 | 
| +    consoleWrite("for (var key of keyStatuses.keys())");
 | 
| +    for (var key of keyStatuses.keys()) {
 | 
| +        consoleWrite(arrayBufferAsString(key));
 | 
| +    }
 | 
| +    consoleWrite("for (var value of keyStatuses.values())");
 | 
| +    for (var value of keyStatuses.values()) {
 | 
| +        consoleWrite(value);
 | 
| +    }
 | 
| +    consoleWrite("for (var entry of keyStatuses.entries())");
 | 
| +    for (var entry of keyStatuses.entries()) {
 | 
| +        consoleWrite(arrayBufferAsString(entry[0]) + ", " + entry[1]);
 | 
| +    }
 | 
| +    consoleWrite("keyStatuses.forEach()");
 | 
| +    keyStatuses.forEach(function(value, key, map) {
 | 
| +        consoleWrite(arrayBufferAsString(key) + ", " + value);
 | 
| +    });
 | 
| +}
 | 
| +
 | 
| +// Verify that |keyStatuses| contains just the keys in |keys.expected|
 | 
| +// and none of the keys in |keys.unexpected|. All keys should have status
 | 
| +// 'usable'. Example call: verifyKeyStatuses(mediaKeySession.keyStatuses,
 | 
| +// { expected: [key1], unexpected: [key2] });
 | 
| +function verifyKeyStatuses(keyStatuses, keys)
 | 
| +{
 | 
| +    var expected = keys.expected || [];
 | 
| +    var unexpected = keys.unexpected || [];
 | 
| +
 | 
| +    // |keyStatuses| should have same size as number of |keys.expected|.
 | 
| +    assert_equals(keyStatuses.size, expected.length);
 | 
| +
 | 
| +    // All |keys.expected| should be found.
 | 
| +    expected.map(function(key) {
 | 
| +        assert_true(keyStatuses.has(key));
 | 
| +        assert_equals(keyStatuses.get(key), 'usable');
 | 
| +    });
 | 
| +
 | 
| +    // All |keys.unexpected| should not be found.
 | 
| +    unexpected.map(function(key) {
 | 
| +        assert_false(keyStatuses.has(key));
 | 
| +        assert_equals(keyStatuses.get(key), undefined);
 | 
| +    });
 | 
| +}
 | 
| +
 | 
|  // Encodes data into base64 string without trailing '='.
 | 
|  function base64Encode(data)
 | 
|  {
 | 
| 
 |