| <!doctype html> |
| <html lang="en"> |
| <head> |
| </head> |
| <body> |
| <video></video> |
| <p>Test that the methods throw INVALID_STATE_ERR when the media element has not loaded. canPlayType() never throws.</p> |
| |
| <script src=../media-file.js></script> |
| <script src=../video-test.js></script> |
| <script> |
| var key = new Uint8Array([0x51, 0x52, 0x53]); |
| |
| function loadStarted() |
| { |
| test("video.networkState == video.NETWORK_LOADING || video.networkState == video.NETWORK_IDLE"); |
| testExpected("video.currentSrc", "", "!="); |
| consoleWrite("Verify that none of the methods throw when load has started."); |
| run("video.webkitGenerateKeyRequest('webkit-org.w3.clearkey')"); |
| run("video.webkitAddKey('webkit-org.w3.clearkey', key)"); |
| run("video.webkitCancelKeyRequest('webkit-org.w3.clearkey')"); |
| run("video.canPlayType('audio/wav', 'webkit-org.w3.clearkey')"); |
| |
| endTest(); |
| } |
| |
| // Confirms the unloaded state. |
| testExpected("video.networkState", video.NETWORK_EMPTY); |
| testExpected("video.currentSrc", ""); |
| |
| consoleWrite("No 'src'. Verify that all methods except canPlayType() throw INVALID_STATE_ERR."); |
| testDOMException("video.webkitGenerateKeyRequest('webkit-org.w3.clearkey')", "DOMException.INVALID_STATE_ERR"); |
| testDOMException("video.webkitAddKey('webkit-org.w3.clearkey', key)", "DOMException.INVALID_STATE_ERR"); |
| testDOMException("video.webkitCancelKeyRequest('webkit-org.w3.clearkey')", "DOMException.INVALID_STATE_ERR"); |
| run("video.canPlayType('audio/wav', 'webkit-org.w3.clearkey')"); |
| |
| video.setAttribute("src", findMediaFile("video", "../content/test")); |
| |
| consoleWrite("<br>'src' has been set, but loading has not yet started. Verify that all methods except canPlayType() throw INVALID_STATE_ERR."); |
| |
| testExpected("video.networkState", video.NETWORK_NO_SOURCE); |
| testExpected("video.currentSrc", ""); |
| |
| testDOMException("video.webkitGenerateKeyRequest('webkit-org.w3.clearkey')", "DOMException.INVALID_STATE_ERR"); |
| testDOMException("video.webkitAddKey('webkit-org.w3.clearkey', key)", "DOMException.INVALID_STATE_ERR"); |
| testDOMException("video.webkitCancelKeyRequest('webkit-org.w3.clearkey')", "DOMException.INVALID_STATE_ERR"); |
| run("video.canPlayType('audio/wav', 'webkit-org.w3.clearkey')"); |
| |
| |
| consoleWrite(""); |
| waitForEvent('loadstart', loadStarted); |
| </script> |
| </body> |
| </html> |