| Tests invalid and valid syntaxes. |
| |
| Test calling functions with too few parameters. |
| TEST(video.webkitGenerateKeyRequest()) THROWS("TypeError: Not enough arguments") OK |
| TEST(video.webkitAddKey()) THROWS("TypeError: Not enough arguments") OK |
| TEST(video.webkitAddKey('webkit-org.w3.clearkey')) THROWS("TypeError: Not enough arguments") OK |
| TEST(video.webkitCancelKeyRequest()) THROWS("TypeError: Not enough arguments") OK |
| |
| Verify invalid key system parameter is caught before checking whether loading has started. |
| EXPECTED (video.networkState == '0') OK |
| EXPECTED (video.currentSrc == '') OK |
| TEST(video.webkitGenerateKeyRequest('')) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitGenerateKeyRequest(null)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitGenerateKeyRequest(undefined)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitAddKey('', key)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitAddKey(null, key)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitAddKey(undefined, key)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitCancelKeyRequest('')) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitCancelKeyRequest(null)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitCancelKeyRequest(undefined)) THROWS(DOMException.SYNTAX_ERR) OK |
| |
| null key is caught before load state is checked. |
| TEST(video.webkitAddKey('webkit-org.w3.clearkey', '')) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitAddKey('webkit-org.w3.clearkey', null)) THROWS(DOMException.SYNTAX_ERR) OK |
| TEST(video.webkitAddKey('webkit-org.w3.clearkey', undefined)) THROWS(DOMException.SYNTAX_ERR) OK |
| |
| 0-length key is caught before load state is checked. |
| TEST(video.webkitAddKey('webkit-org.w3.clearkey', new Uint8Array())) THROWS(DOMException.TYPE_MISMATCH_ERR) OK |
| |
| Key system validity is not checked before loading. |
| TEST(video.webkitGenerateKeyRequest('com.example.invalid')) THROWS(DOMException.INVALID_STATE_ERR) OK |
| TEST(video.webkitAddKey('com.example.invalid', key)) THROWS(DOMException.INVALID_STATE_ERR) OK |
| TEST(video.webkitCancelKeyRequest('com.example.invalid')) THROWS(DOMException.INVALID_STATE_ERR) OK |
| |
| EVENT(loadstart) |
| Verify valid syntaxes do not throw. |
| EXPECTED (video.networkState == '2') OK |
| EXPECTED (video.currentSrc != '') OK |
| RUN(video.webkitGenerateKeyRequest('webkit-org.w3.clearkey')) |
| RUN(video.webkitGenerateKeyRequest('webkit-org.w3.clearkey', initData)) |
| RUN(video.webkitAddKey('webkit-org.w3.clearkey', key)) |
| RUN(video.webkitAddKey('webkit-org.w3.clearkey', key, 'session')) |
| RUN(video.webkitAddKey('webkit-org.w3.clearkey', key, initData)) |
| RUN(video.webkitAddKey('webkit-org.w3.clearkey', key, initData, 'session')) |
| RUN(video.webkitCancelKeyRequest('webkit-org.w3.clearkey')) |
| RUN(video.webkitCancelKeyRequest('webkit-org.w3.clearkey', 'session')) |
| |
| Unsupported key systems result in NOT_SUPPORTED_ERR. |
| TEST(video.webkitGenerateKeyRequest('com.example.invalid')) THROWS(DOMException.NOT_SUPPORTED_ERR) OK |
| TEST(video.webkitAddKey('com.example.invalid', key)) THROWS(DOMException.NOT_SUPPORTED_ERR) OK |
| TEST(video.webkitCancelKeyRequest('com.example.invalid')) THROWS(DOMException.NOT_SUPPORTED_ERR) OK |
| END OF TEST |
| |