Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(16)

Unified Diff: third_party/WebKit/LayoutTests/imported/wpt/html/semantics/forms/the-form-element/form-nameditem.html

Issue 2610243002: Import wpt@5e1a3b80cea8d36774d2afd78b29a74792e9f15a (Closed)
Patch Set: Rebased Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/imported/wpt/html/semantics/forms/the-form-element/form-nameditem.html
diff --git a/third_party/WebKit/LayoutTests/imported/wpt/html/semantics/forms/the-form-element/form-nameditem.html b/third_party/WebKit/LayoutTests/imported/wpt/html/semantics/forms/the-form-element/form-nameditem.html
index 3edf903b735248f57d2565c20d65650c42170758..0155d38b5473adf45ccb6421ecf8de89a03537bb 100644
--- a/third_party/WebKit/LayoutTests/imported/wpt/html/semantics/forms/the-form-element/form-nameditem.html
+++ b/third_party/WebKit/LayoutTests/imported/wpt/html/semantics/forms/the-form-element/form-nameditem.html
@@ -327,4 +327,93 @@ test(function() {
assert_equals(form["new-name2"], 5);
}, 'Trying to set a non-configurable expando that shadows a named property that gets added later');
+test(function() {
+ var form = document.getElementsByTagName("form")[1];
+
+ var i1 = document.createElement("input");
+ i1.name = "past-name1";
+ i1.id = "past-id1"
+
+ assert_equals(form["past-name1"], undefined);
+ assert_equals(form["past-id1"], undefined);
+ form.appendChild(i1);
+ assert_equals(form["past-name1"], i1);
+ assert_equals(form["past-id1"], i1);
+
+ i1.name = "twiddled-name1";
+ i1.id = "twiddled-id1";
+ assert_equals(form["past-name1"], i1);
+ assert_equals(form["twiddled-name1"], i1);
+ assert_equals(form["past-id1"], i1);
+ assert_equals(form["twiddled-id1"], i1);
+
+ i1.name = "twiddled-name2";
+ i1.id = "twiddled-id2";
+ assert_equals(form["past-name1"], i1);
+ assert_equals(form["twiddled-name1"], i1);
+ assert_equals(form["twiddled-name2"], i1);
+ assert_equals(form["past-id1"], i1);
+ assert_equals(form["twiddled-id1"], i1);
+ assert_equals(form["twiddled-id2"], i1);
+
+ i1.removeAttribute("id");
+ i1.removeAttribute("name");
+ assert_equals(form["past-name1"], i1);
+ assert_equals(form["twiddled-name1"], i1);
+ assert_equals(form["twiddled-name2"], i1);
+ assert_equals(form["past-id1"], i1);
+ assert_equals(form["twiddled-id1"], i1);
+ assert_equals(form["twiddled-id2"], i1);
+
+ i1.remove();
+ assert_equals(form["past-name1"], undefined);
+ assert_equals(form["twiddled-name1"], undefined);
+ assert_equals(form["twiddled-name2"], undefined);
+ assert_equals(form["past-id1"], undefined);
+ assert_equals(form["twiddled-id1"], undefined);
+ assert_equals(form["twiddled-id2"], undefined);
+
+ var i2 = document.createElement("input");
+ i2.name = "past-name2";
+ i2.id = "past-id2";
+
+ assert_equals(form["past-name2"], undefined);
+ assert_equals(form["past-id2"], undefined);
+ form.appendChild(i2);
+ assert_equals(form["past-name2"], i2);
+ assert_equals(form["past-id2"], i2);
+
+ i2.name = "twiddled-name3";
+ i2.id = "twiddled-id3";
+ assert_equals(form["past-name2"], i2);
+ assert_equals(form["twiddled-name3"], i2);
+ assert_equals(form["past-id2"], i2);
+ assert_equals(form["twiddled-id3"], i2);
+
+ i2.name = "twiddled-name4";
+ i2.id = "twiddled-id4";
+ assert_equals(form["past-name2"], i2);
+ assert_equals(form["twiddled-name3"], i2);
+ assert_equals(form["twiddled-name4"], i2);
+ assert_equals(form["past-id2"], i2);
+ assert_equals(form["twiddled-id3"], i2);
+ assert_equals(form["twiddled-id4"], i2);
+
+ i2.removeAttribute("id");
+ i2.removeAttribute("name");
+ assert_equals(form["past-name2"], i2);
+ assert_equals(form["twiddled-name3"], i2);
+ assert_equals(form["twiddled-name4"], i2);
+ assert_equals(form["past-id2"], i2);
+ assert_equals(form["twiddled-id3"], i2);
+ assert_equals(form["twiddled-id4"], i2);
+
+ i2.setAttribute("form", "c");
+ assert_equals(form["past-name2"], undefined);
+ assert_equals(form["twiddled-name3"], undefined);
+ assert_equals(form["twiddled-name4"], undefined);
+ assert_equals(form["past-id2"], undefined);
+ assert_equals(form["twiddled-id3"], undefined);
+ assert_equals(form["twiddled-id4"], undefined);
+}, "Past names map should work correctly");
</script>

Powered by Google App Engine
This is Rietveld 408576698