aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2015-11-10 12:54:30 +0530
committerbors-servo <lbergstrom+bors@mozilla.com>2015-11-10 12:54:30 +0530
commit81f094b129f4df5f8287eb6613108b673211a546 (patch)
tree4fe378128702330a1908439abb698edea47b87dc
parent32a91bc6566ab23318a902392ade7096ccbb9e36 (diff)
parent575b3c3d4ba80a12a11557d6db43e04b1e745a8f (diff)
downloadservo-81f094b129f4df5f8287eb6613108b673211a546.tar.gz
servo-81f094b129f4df5f8287eb6613108b673211a546.zip
Auto merge of #8447 - frewsxcv:htmltableelement-width-idl-attribute, r=eefriedman
Implement 'width' IDL attribute on <table> <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/8447) <!-- Reviewable:end -->
-rw-r--r--components/script/dom/htmltableelement.rs6
-rw-r--r--components/script/dom/webidls/HTMLTableElement.webidl2
-rw-r--r--tests/wpt/metadata/html/dom/interfaces.html.ini6
-rw-r--r--tests/wpt/metadata/html/dom/reflection-tabular.html.ini129
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