| Index: LayoutTests/imported/web-platform-tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html
|
| diff --git a/LayoutTests/imported/web-platform-tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html b/LayoutTests/imported/web-platform-tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..8c4c3efe3df1998f5677b846e1aac496c9e37c61
|
| --- /dev/null
|
| +++ b/LayoutTests/imported/web-platform-tests/html/semantics/embedded-content/the-audio-element/audio_constructor.html
|
| @@ -0,0 +1,51 @@
|
| +<!doctype html>
|
| +<meta charset=utf-8>
|
| +<title>Audio constructor</title>
|
| +<script src="../../../../../../resources/testharness.js"></script>
|
| +<script src="../../../../../../resources/testharnessreport.js"></script>
|
| +<div id=log></div>
|
| +<script>
|
| +test(function() {
|
| + var throwingObject = {
|
| + toString: function() { throw Error() },
|
| + valueOf: function() { throw Error() }
|
| + };
|
| + var tests = [
|
| + [function() { return Audio() }, null, "No arguments, without new"],
|
| + [function() { return new Audio() }, null, "No arguments, with new"],
|
| + [function() { return Audio("") }, "", "Empty string argument, without new"],
|
| + [function() { return new Audio("") }, "", "Empty string argument, with new"],
|
| + [function() { return Audio("src") }, "src", "Non-empty string argument, without new"],
|
| + [function() { return new Audio("src") }, "src", "Non-empty string argument, with new"],
|
| + [function() { return Audio(null) }, "null", "Null argument, without new"],
|
| + [function() { return new Audio(null) }, "null", "Null argument, with new"],
|
| + [function() { return Audio(undefined) }, null, "Undefined argument, without new"],
|
| + [function() { return new Audio(undefined) }, null, "Undefined argument, with new"],
|
| + [function() { return Audio("", throwingObject) }, "", "Extra argument, without new"],
|
| + [function() { return new Audio("", throwingObject) }, "", "Extra argument, with new"],
|
| + ];
|
| + tests.forEach(function(t) {
|
| + var fn = t[0], expectedSrc = t[1], description = t[2];
|
| + test(function() {
|
| + var element = fn();
|
| + assert_equals(element.localName, "audio");
|
| + assert_equals(element.tagName, "AUDIO");
|
| + assert_equals(element.namespaceURI, "http://www.w3.org/1999/xhtml");
|
| + assert_equals(element.nodeType, Node.ELEMENT_NODE);
|
| + assert_equals(element.getAttribute("preload"), "auto");
|
| + assert_equals(element.getAttribute("src"), expectedSrc);
|
| + assert_equals(element.ownerDocument, document);
|
| + }, description);
|
| + });
|
| +});
|
| +test(function() {
|
| + assert_throws(new TypeError(), function() {
|
| + HTMLAudioElement();
|
| + });
|
| +}, "Calling HTMLAudioElement should throw");
|
| +test(function() {
|
| + assert_throws(new TypeError(), function() {
|
| + new HTMLAudioElement();
|
| + });
|
| +}, "Constructing HTMLAudioElement should throw");
|
| +</script>
|
|
|