Index: third_party/WebKit/LayoutTests/media/encrypted-media/encrypted-media-syntax.html |
diff --git a/third_party/WebKit/LayoutTests/media/encrypted-media/encrypted-media-syntax.html b/third_party/WebKit/LayoutTests/media/encrypted-media/encrypted-media-syntax.html |
index fb1e83aebac60d91b984f3c5d14db3e5908c47c3..201ee320c951fd81bdaa62695d5b7c24cf7caf35 100644 |
--- a/third_party/WebKit/LayoutTests/media/encrypted-media/encrypted-media-syntax.html |
+++ b/third_party/WebKit/LayoutTests/media/encrypted-media/encrypted-media-syntax.html |
@@ -1001,6 +1001,34 @@ |
}); |
}, 'Test MediaKeys setServerCertificate().'); |
+ function test_valid_message_type(message_type) |
+ { |
+ var event = new MediaKeyMessageEvent('eventType', { messageType: message_type, message: new ArrayBuffer(0) } ); |
+ assert_equals(event.messageType, message_type); |
+ } |
+ |
+ test(function(test) |
+ { |
+ // Valid MediaKeyMessageType values. |
+ test_valid_message_type('license-request'); |
+ test_valid_message_type('license-renewal'); |
+ test_valid_message_type('license-release'); |
+ // TODO(jrummell): Add 'individualization-request' if the final |
+ // spec includes it. http://crbug.com/628437. |
+ |
+ // Invalid MediaKeyMessageType values should throw a TypeError. |
+ assert_throws(new TypeError, function() { |
+ new MediaKeyMessageEvent('eventType', { messageType: 'something-else', message: new ArrayBuffer(0) } ); |
+ }); |
+ |
+ // Missing required values should throw a TypeError. |
+ assert_throws(new TypeError, function() { |
+ new MediaKeyMessageEvent('eventType', { message: new ArrayBuffer(0) } ); |
+ }); |
+ assert_throws(new TypeError, function() { |
+ new MediaKeyMessageEvent('eventType', { messageType: 'license-request' } ); |
+ }); |
+ }, 'Test MediaKeyMessageEvent.'); |
// FIXME: Add syntax checks for MediaKeys.IsTypeSupported(). |
// FIXME: Add syntax checks for MediaKeyError and MediaKeySession events. |