aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlformelement.rs
diff options
context:
space:
mode:
authorSimon Wülker <simon.wuelker@arcor.de>2024-11-28 01:54:03 +0100
committerGitHub <noreply@github.com>2024-11-28 00:54:03 +0000
commit9168375b337511e0b1f3e22cd55a790d7ec89956 (patch)
tree921d17d41e7c19289dde55e7723d0803e482ea10 /components/script/dom/htmlformelement.rs
parent612492b372c550533e1f3a51fe9e16eb44e73b2b (diff)
downloadservo-9168375b337511e0b1f3e22cd55a790d7ec89956.tar.gz
servo-9168375b337511e0b1f3e22cd55a790d7ec89956.zip
Differentiate between missing/invalid value in `make_enumerated_getter!` (#34412)
* Create spec-compliant version of create_enumerated_getter Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Use new make_enumerated_getter! macro everywhere Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Remove old make_enumerated_getter macro Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Return lowercased value from make_enumerated_getter macro Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Update WPT expectations Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> --------- Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Diffstat (limited to 'components/script/dom/htmlformelement.rs')
-rw-r--r--components/script/dom/htmlformelement.rs21
1 files changed, 17 insertions, 4 deletions
diff --git a/components/script/dom/htmlformelement.rs b/components/script/dom/htmlformelement.rs
index 4fe3785d470..dd278cc8ad3 100644
--- a/components/script/dom/htmlformelement.rs
+++ b/components/script/dom/htmlformelement.rs
@@ -217,7 +217,13 @@ impl HTMLFormElementMethods<crate::DomTypeHolder> for HTMLFormElement {
make_setter!(SetAction, "action");
// https://html.spec.whatwg.org/multipage/#dom-form-autocomplete
- make_enumerated_getter!(Autocomplete, "autocomplete", "on", "off");
+ make_enumerated_getter!(
+ Autocomplete,
+ "autocomplete",
+ "on" | "off",
+ missing => "on",
+ invalid => "on"
+ );
// https://html.spec.whatwg.org/multipage/#dom-form-autocomplete
make_setter!(SetAutocomplete, "autocomplete");
@@ -226,8 +232,9 @@ impl HTMLFormElementMethods<crate::DomTypeHolder> for HTMLFormElement {
make_enumerated_getter!(
Enctype,
"enctype",
- "application/x-www-form-urlencoded",
- "text/plain" | "multipart/form-data"
+ "application/x-www-form-urlencoded" | "text/plain" | "multipart/form-data",
+ missing => "application/x-www-form-urlencoded",
+ invalid => "application/x-www-form-urlencoded"
);
// https://html.spec.whatwg.org/multipage/#dom-fs-enctype
@@ -244,7 +251,13 @@ impl HTMLFormElementMethods<crate::DomTypeHolder> for HTMLFormElement {
}
// https://html.spec.whatwg.org/multipage/#dom-fs-method
- make_enumerated_getter!(Method, "method", "get", "post" | "dialog");
+ make_enumerated_getter!(
+ Method,
+ "method",
+ "get" | "post" | "dialog",
+ missing => "get",
+ invalid => "get"
+ );
// https://html.spec.whatwg.org/multipage/#dom-fs-method
make_setter!(SetMethod, "method");