| Index: LayoutTests/imported/web-platform-tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html
|
| diff --git a/LayoutTests/imported/web-platform-tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html b/LayoutTests/imported/web-platform-tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..7a4092ef356bb45a9480cca01cede1ac916e49b0
|
| --- /dev/null
|
| +++ b/LayoutTests/imported/web-platform-tests/html/semantics/forms/the-select-element/common-HTMLOptionsCollection-namedItem.html
|
| @@ -0,0 +1,62 @@
|
| +<!DOCTYPE html>
|
| +<html>
|
| +<head>
|
| +<meta charset="utf-8">
|
| +<title id='title'>HTMLOptionsCollection</title>
|
| +<script src="../../../../../../resources/testharness.js"></script>
|
| +<script src="../../../../../../resources/testharnessreport.js"></script>
|
| +<div id="log"></div>
|
| +<select id="selly">
|
| + <option id="id1" name="name1">1</option>
|
| + <option id="id2" name="name2">2</option>
|
| + <option id="id3" name="name3">3</option>
|
| + <option id="id4" name="name4">4</option>
|
| + <option name="nameonly">nameonly</option>
|
| + <option id="id3">duplicate ID</option>
|
| + <option name="name4">duplicate name</option>
|
| + <option id="mixed1">mixed ID</option>
|
| + <option name="mixed1">mixed name</option>
|
| +</select>
|
| +
|
| +<script>
|
| +var selly;
|
| +setup(function() {
|
| + selly = document.getElementById('selly');
|
| +});
|
| +
|
| +test(function () {
|
| + assert_equals(selly.namedItem('nameonly')["value"], "nameonly");
|
| +}, "if only one item has a *name* or id value matching the parameter, return that object and stop");
|
| +
|
| +test(function () {
|
| + assert_equals(selly.namedItem('id2')["value"], "2");
|
| +}, "if only one item has a name or *id* value matching the parameter, return that object and stop");
|
| +
|
| +test(function () {
|
| + assert_equals(selly.namedItem('thisdoesnotexist'), null);
|
| +}, "if no item has a name or id value matching the parameter, return null and stop");
|
| +
|
| +test(function () {
|
| + var testarr = [];
|
| + for (var i = 0; i < selly.namedItem('id3').length; i++) {
|
| + testarr.push(selly.namedItem('id3')[i].text);
|
| + }
|
| + assert_array_equals(testarr, ['3','duplicate ID']);
|
| +}, "return an HTMLOptionsCollection in correct order for repeated 'id' value");
|
| +
|
| +test(function () {
|
| + var testarr = [];
|
| + for (var i = 0; i < selly.namedItem('name4').length; i++) {
|
| + testarr.push(selly.namedItem('name4')[i].text);
|
| + }
|
| + assert_array_equals(testarr, ['4', 'duplicate name']);
|
| +}, "return an HTMLOptionsCollection in correct order for repeated 'name' value");
|
| +
|
| +test(function () {
|
| + var testarr = [];
|
| + for (var i = 0; i < selly.namedItem('mixed1').length; i++) {
|
| + testarr.push(selly.namedItem('mixed1')[i].text);
|
| + }
|
| + assert_array_equals(testarr, ['mixed ID', 'mixed name']);
|
| +}, "return an HTMLOptionsCollection in correct order for repeated mixed value");
|
| +</script>
|
|
|