Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / third_party / WebKit / LayoutTests / http / tests / media / media-source / mediasource-endofstream-invaliderror.html
index 0ac4b63..1c86c9a 100644 (file)
               test.failOnEvent(mediaElement, 'error');
               assert_equals(mediaSource.readyState, 'open');
 
+              test.expectEvent(mediaSource, 'sourceend');
+              mediaSource.endOfStream();
+
+              assert_equals(mediaSource.readyState, 'ended');
+              assert_throws("InvalidStateError",
+                  function() {  mediaSource.endOfStream(); },
+                  "endofStream() threw an exception when in ended state");
+             
+              test.done();
+          }, 'Test MediaSource.endOfStream() with when readyState is ended.');
+          
+          mediasource_test(function(test, mediaElement, mediaSource)
+          {
+              test.failOnEvent(mediaElement, 'error');
+              assert_equals(mediaSource.readyState, 'open');
+
+              test.expectEvent(mediaSource, 'sourceend');
+              mediaSource.endOfStream();
+
+              assert_equals(mediaSource.readyState, 'ended');
+              assert_throws("InvalidStateError",
+                  function() {  mediaSource.endOfStream("decode"); },
+                  "endofStream() threw an exception when in ended state");
+   
+              test.done();
+          }, 'Test MediaSource.endOfStream(decode) with when readyState is ended.');
+
+          mediasource_test(function(test, mediaElement, mediaSource)
+          {
+              test.failOnEvent(mediaElement, 'error');
+              assert_equals(mediaSource.readyState, 'open');
+
+              test.expectEvent(mediaSource, 'sourceend');
+              mediaSource.endOfStream();
+
+              assert_equals(mediaSource.readyState, 'ended');
+              assert_throws("InvalidStateError",
+                  function() {  mediaSource.endOfStream("network"); },
+                  "endofStream() threw an exception when in ended state");
+              
+              test.done();
+          }, 'Test MediaSource.endOfStream(network) with when readyState is ended.');
+                              
+          mediasource_test(function(test, mediaElement, mediaSource)
+          {
+              test.failOnEvent(mediaElement, 'error');
+              assert_equals(mediaSource.readyState, 'open');
+
               assert_throws(new TypeError(),
                   function() { mediaSource.endOfStream(null); },
                   'endOfStream(null) throws TypeError');