From 575b3c3d4ba80a12a11557d6db43e04b1e745a8f Mon Sep 17 00:00:00 2001 From: Corey Farwell Date: Mon, 9 Nov 2015 23:13:41 -0500 Subject: [PATCH] Implement 'width' IDL attribute on --- components/script/dom/htmltableelement.rs | 6 + .../dom/webidls/HTMLTableElement.webidl | 2 +- .../wpt/metadata/html/dom/interfaces.html.ini | 6 - .../html/dom/reflection-tabular.html.ini | 129 ------------------ 4 files changed, 7 insertions(+), 136 deletions(-) diff --git a/components/script/dom/htmltableelement.rs b/components/script/dom/htmltableelement.rs index ca22d1f92b3..355e23f6c59 100644 --- a/components/script/dom/htmltableelement.rs +++ b/components/script/dom/htmltableelement.rs @@ -115,6 +115,12 @@ impl HTMLTableElementMethods for HTMLTableElement { // https://html.spec.whatwg.org/multipage/#dom-table-bgcolor make_setter!(SetBgColor, "bgcolor"); + + // https://html.spec.whatwg.org/multipage/#dom-table-width + make_getter!(Width); + + // https://html.spec.whatwg.org/multipage/#dom-table-width + make_dimension_setter!(SetWidth, "width"); } pub trait HTMLTableElementLayoutHelpers { diff --git a/components/script/dom/webidls/HTMLTableElement.webidl b/components/script/dom/webidls/HTMLTableElement.webidl index cb405fdf8aa..edf8d1d720f 100644 --- a/components/script/dom/webidls/HTMLTableElement.webidl +++ b/components/script/dom/webidls/HTMLTableElement.webidl @@ -32,7 +32,7 @@ partial interface HTMLTableElement { // attribute DOMString frame; // attribute DOMString rules; // attribute DOMString summary; - // attribute DOMString width; + attribute DOMString width; [TreatNullAs=EmptyString] attribute DOMString bgColor; //[TreatNullAs=EmptyString] attribute DOMString cellPadding; diff --git a/tests/wpt/metadata/html/dom/interfaces.html.ini b/tests/wpt/metadata/html/dom/interfaces.html.ini index 2d529c28d0c..624c628e27e 100644 --- a/tests/wpt/metadata/html/dom/interfaces.html.ini +++ b/tests/wpt/metadata/html/dom/interfaces.html.ini @@ -4458,9 +4458,6 @@ [HTMLTableElement interface: attribute summary] expected: FAIL - [HTMLTableElement interface: attribute width] - expected: FAIL - [HTMLTableElement interface: attribute cellPadding] expected: FAIL @@ -4524,9 +4521,6 @@ [HTMLTableElement interface: document.createElement("table") must inherit property "summary" with the proper type (20)] expected: FAIL - [HTMLTableElement interface: document.createElement("table") must inherit property "width" with the proper type (21)] - expected: FAIL - [HTMLTableElement interface: document.createElement("table") must inherit property "cellPadding" with the proper type (23)] expected: FAIL diff --git a/tests/wpt/metadata/html/dom/reflection-tabular.html.ini b/tests/wpt/metadata/html/dom/reflection-tabular.html.ini index 969134a9c08..162619b69df 100644 --- a/tests/wpt/metadata/html/dom/reflection-tabular.html.ini +++ b/tests/wpt/metadata/html/dom/reflection-tabular.html.ini @@ -1212,135 +1212,6 @@ [table.summary: IDL set to object "test-valueOf" followed by IDL get] expected: FAIL - [table.width: typeof IDL attribute] - expected: FAIL - - [table.width: IDL get with DOM attribute unset] - expected: FAIL - - [table.width: setAttribute() to "" followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo " followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to undefined followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to 7 followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to 1.5 followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to true followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to false followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to object "[object Object\]" followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to NaN followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to Infinity followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to -Infinity followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to "\\0" followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to null followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to object "test-toString" followed by IDL get] - expected: FAIL - - [table.width: setAttribute() to object "test-valueOf" followed by IDL get] - expected: FAIL - - [table.width: IDL set to "" followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to " \\0\\x01\\x02\\x03\\x04\\x05\\x06\\x07 \\b\\t\\n\\v\\f\\r\\x0e\\x0f \\x10\\x11\\x12\\x13\\x14\\x15\\x16\\x17 \\x18\\x19\\x1a\\x1b\\x1c\\x1d\\x1e\\x1f foo " followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to undefined followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to undefined followed by IDL get] - expected: FAIL - - [table.width: IDL set to 7 followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to 7 followed by IDL get] - expected: FAIL - - [table.width: IDL set to 1.5 followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to 1.5 followed by IDL get] - expected: FAIL - - [table.width: IDL set to true followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to true followed by IDL get] - expected: FAIL - - [table.width: IDL set to false followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to false followed by IDL get] - expected: FAIL - - [table.width: IDL set to object "[object Object\]" followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to object "[object Object\]" followed by IDL get] - expected: FAIL - - [table.width: IDL set to NaN followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to NaN followed by IDL get] - expected: FAIL - - [table.width: IDL set to Infinity followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to Infinity followed by IDL get] - expected: FAIL - - [table.width: IDL set to -Infinity followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to -Infinity followed by IDL get] - expected: FAIL - - [table.width: IDL set to "\\0" followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to null followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to null followed by IDL get] - expected: FAIL - - [table.width: IDL set to object "test-toString" followed by getAttribute()] - expected: FAIL - - [table.width: IDL set to object "test-toString" followed by IDL get] - expected: FAIL - - [table.width: IDL set to object "test-valueOf" followed by IDL get] - expected: FAIL - [table.cellPadding: typeof IDL attribute] expected: FAIL