| Index: LayoutTests/fast/dom/text-api-arguments.html
|
| diff --git a/LayoutTests/fast/dom/text-api-arguments.html b/LayoutTests/fast/dom/text-api-arguments.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..10ea082b1fbce0dffc2da91322c4b069aa7fa61d
|
| --- /dev/null
|
| +++ b/LayoutTests/fast/dom/text-api-arguments.html
|
| @@ -0,0 +1,42 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| +<head>
|
| +<link rel="help" href="http://www.w3.org/TR/2012/WD-dom-20121206/#text">
|
| +<script src="../js/resources/js-test-pre.js"></script>
|
| +</head>
|
| +<body>
|
| +<script>
|
| +description("Tests that the Text API arguments are correctly validated.");
|
| +
|
| +var text = document.createTextNode("abcdefg");
|
| +shouldBeEqualToString("text.data", "abcdefg");
|
| +shouldBe("text.__proto__", "Text.prototype");
|
| +
|
| +// Text splitText(unsigned long offset)
|
| +shouldBeEqualToString("text.splitText(4).data", "efg");
|
| +shouldBeEqualToString("text.data", "abcd");
|
| +shouldThrow("text.splitText()", "'TypeError: Not enough arguments'");
|
| +shouldBeEqualToString("text.data", "abcd");
|
| +shouldThrow("text.splitText(999)", "'IndexSizeError: Index or size was negative, or greater than the allowed value.'"); // offset greater than length.
|
| +shouldBeEqualToString("text.data", "abcd");
|
| +shouldThrow("text.splitText(-1)", "'IndexSizeError: Index or size was negative, or greater than the allowed value.'"); // offset greater than length (after wrapping)
|
| +shouldBeEqualToString("text.data", "abcd");
|
| +shouldBeEqualToString("text.splitText(-4294967294).data", "cd"); // Wraps to 2, which is a valid offset.
|
| +shouldBeEqualToString("text.data", "ab");
|
| +
|
| +// Text replaceWholeText(DOMString content)
|
| +text.data = "abcdefg";
|
| +shouldBe("text.replaceWholeText('test')", "text");
|
| +shouldBeEqualToString("text.data", "test");
|
| +shouldBeNull("text.replaceWholeText('')");
|
| +shouldBeEqualToString("text.data", "test");
|
| +shouldThrow("text.replaceWholeText()", "'TypeError: Not enough arguments'");
|
| +shouldBeEqualToString("text.data", "test");
|
| +shouldBe("text.replaceWholeText(null)", "text");
|
| +shouldBeEqualToString("text.data", "null");
|
| +shouldBe("text.replaceWholeText(undefined)", "text");
|
| +shouldBeEqualToString("text.data", "undefined");
|
| +</script>
|
| +<script src="../js/resources/js-test-post.js"></script>
|
| +</body>
|
| +</html>
|
|
|