Chromium Code Reviews| Index: LayoutTests/media/encrypted-media/encrypted-media-setmediakeys.html |
| diff --git a/LayoutTests/media/encrypted-media/encrypted-media-setmediakeys.html b/LayoutTests/media/encrypted-media/encrypted-media-setmediakeys.html |
| index 92d7f982a7819ef461e96984f2addbfa9d6fe6ed..164fe7af417a5dca8d20f4be1c9ae06a6176a40d 100644 |
| --- a/LayoutTests/media/encrypted-media/encrypted-media-setmediakeys.html |
| +++ b/LayoutTests/media/encrypted-media/encrypted-media-setmediakeys.html |
| @@ -23,24 +23,31 @@ |
| assert_equals(typeof video.setMediaKeys, 'function'); |
| // Try setting mediaKeys to null. |
| - video.setMediaKeys(null); |
| - assert_equals(video.mediaKeys, null); |
| + video.setMediaKeys(null).then(function(result) { |
| + assert_equals(video.mediaKeys, null); |
| - // Try setting mediaKeys to the wrong type of object. |
| - assert_throws(new TypeError(), |
| - function () { video.setMediaKeys(new Date()) }); |
| + // Try setting mediaKeys to the wrong type of object. |
| + return video.setMediaKeys(new Date()); |
| + }).then(function(result) { |
| + assert_unreached('setMediaKeys did not fail when setting to Date()'); |
| + }, function(error) { |
| + // TypeError expected. |
| + assert_equals(error.name, 'TypeError'); |
| - // Create a MediaKeys object and assign it to video. |
| - MediaKeys.create('org.w3.clearkey').then(function(result) { |
| + // Create a MediaKeys object and assign it to video. |
| + return MediaKeys.create('org.w3.clearkey'); |
| + }).then(function(result) { |
| mediaKeys = result; |
| assert_not_equals(mediaKeys, null); |
| assert_equals(mediaKeys.keySystem, 'org.w3.clearkey'); |
| - video.setMediaKeys(mediaKeys); |
| + return video.setMediaKeys(mediaKeys); |
| + }).then(function(result) { |
| assert_not_equals(video.mediaKeys, null); |
| assert_true(video.mediaKeys === mediaKeys); |
| // Set it a second time. |
| - video.setMediaKeys(mediaKeys); |
| + return video.setMediaKeys(mediaKeys); |
| + }).then(function(result) { |
| assert_not_equals(video.mediaKeys, null); |
| assert_true(video.mediaKeys === mediaKeys); |
| @@ -55,26 +62,37 @@ |
| assert_equals(mediaKeys2.keySystem, 'org.w3.clearkey'); |
| // Assign the second MediaKeys to video. |
| - video.setMediaKeys(mediaKeys2); |
| + return video.setMediaKeys(mediaKeys2); |
| + }).then(function(result) { |
| assert_not_equals(video.mediaKeys, null); |
| assert_not_equals(video.mediaKeys, mediaKeys); |
| assert_true(video.mediaKeys === mediaKeys2); |
| // Set it back to first MediaKeys. |
| - video.setMediaKeys(mediaKeys); |
| + return video.setMediaKeys(mediaKeys); |
| + }, function(error) { |
| + // Some implementations don't support changing MediaKeys |
| + // once set, so this test is a success. |
| + // FIXME: Enable before submitting to W3C. |
|
ddorwin
2014/08/09 00:36:52
Allow this to pass as necessary... ?
jrummell
2014/08/11 21:24:47
Done.
|
| + assert_equals(error.name, "NotSupportedError"); |
| + forceTestFailureFromPromise(test, error); |
| + }).then(function(result) { |
| assert_true(video.mediaKeys === mediaKeys); |
| assert_not_equals(video.mediaKeys, mediaKeys2); |
| // Set mediaKeys to null. |
| - video.setMediaKeys(null); |
| + return video.setMediaKeys(null); |
| + }).then(function(result) { |
| assert_equals(video.mediaKeys, null); |
| // Set it to null a second time. |
| - video.setMediaKeys(null); |
| + return video.setMediaKeys(null); |
| + }).then(function(result) { |
| assert_equals(video.mediaKeys, null); |
| // Set it back to first MediaKeys again. |
| - video.setMediaKeys(mediaKeys); |
| + return video.setMediaKeys(mediaKeys); |
| + }).then(function(result) { |
| assert_true(video.mediaKeys === mediaKeys); |
| assert_not_equals(video.mediaKeys, mediaKeys2); |
| test.done(); |