mirror of
https://github.com/servo/servo.git
synced 2025-08-04 21:20:23 +01:00
Auto merge of #10362 - amarant:10348-string-preferences, r=jdm
Issue #10348 Implement StringMozPreference, string preferences, WPT test I'm not exactly sure of the wanted semantics with boolean values. Fixes #10348. <!-- Reviewable:start --> --- This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/10362) <!-- Reviewable:end -->
This commit is contained in:
commit
17ffc6cf71
4 changed files with 21 additions and 1 deletions
|
@ -490,6 +490,9 @@ impl TestBindingMethods for TestBinding {
|
||||||
fn BooleanMozPreference(&self, pref_name: DOMString) -> bool {
|
fn BooleanMozPreference(&self, pref_name: DOMString) -> bool {
|
||||||
get_pref(pref_name.as_ref()).as_boolean().unwrap_or(false)
|
get_pref(pref_name.as_ref()).as_boolean().unwrap_or(false)
|
||||||
}
|
}
|
||||||
|
fn StringMozPreference(&self, pref_name: DOMString) -> DOMString {
|
||||||
|
get_pref(pref_name.as_ref()).as_string().map(|s| DOMString::from(s)).unwrap_or_else(|| DOMString::new())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl TestBinding {
|
impl TestBinding {
|
||||||
|
|
|
@ -400,4 +400,5 @@ interface TestBinding {
|
||||||
static attribute boolean booleanAttributeStatic;
|
static attribute boolean booleanAttributeStatic;
|
||||||
static void receiveVoidStatic();
|
static void receiveVoidStatic();
|
||||||
boolean BooleanMozPreference(DOMString pref_name);
|
boolean BooleanMozPreference(DOMString pref_name);
|
||||||
|
DOMString StringMozPreference(DOMString pref_name);
|
||||||
};
|
};
|
||||||
|
|
|
@ -1,3 +1,10 @@
|
||||||
[preferences.html]
|
[preferences.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
prefs: [dom.testbinding.preference_value.falsy:false, dom.testbinding.preference_value.truthy:true]
|
prefs: [
|
||||||
|
dom.testbinding.preference_value.falsy:false,
|
||||||
|
dom.testbinding.preference_value.truthy:true,
|
||||||
|
dom.testbinding.preference_value.string_empty:,
|
||||||
|
dom.testbinding.preference_value.string_test:test,
|
||||||
|
dom.testbinding.preference_value.space_string_test:test1 test2,
|
||||||
|
dom.testbinding.preference_value.quote_string_test:"test1 test2",
|
||||||
|
]
|
||||||
|
|
|
@ -9,5 +9,14 @@ test(function() {
|
||||||
assert_equals(typeof testBinding.BooleanMozPreference, "function");
|
assert_equals(typeof testBinding.BooleanMozPreference, "function");
|
||||||
assert_equals(testBinding.BooleanMozPreference("dom.testbinding.preference_value.falsy"), false);
|
assert_equals(testBinding.BooleanMozPreference("dom.testbinding.preference_value.falsy"), false);
|
||||||
assert_equals(testBinding.BooleanMozPreference("dom.testbinding.preference_value.truthy"), true);
|
assert_equals(testBinding.BooleanMozPreference("dom.testbinding.preference_value.truthy"), true);
|
||||||
|
assert_equals(testBinding.BooleanMozPreference("dom.testbinding.preference_value.string_test"), false);
|
||||||
|
assert_equals(testBinding.BooleanMozPreference("dom.testbinding.preference_value.string_empty"), false);
|
||||||
|
assert_equals(typeof testBinding.StringMozPreference, "function");
|
||||||
|
assert_equals(testBinding.StringMozPreference("dom.testbinding.preference_value.string_test"), "test");
|
||||||
|
assert_equals(testBinding.StringMozPreference("dom.testbinding.preference_value.string_empty"), "");
|
||||||
|
assert_equals(testBinding.StringMozPreference("dom.testbinding.preference_value.falsy"), "");
|
||||||
|
assert_equals(testBinding.StringMozPreference("dom.testbinding.preference_value.truthy"), "");
|
||||||
|
assert_equals(testBinding.StringMozPreference("dom.testbinding.preference_value.space_string_test"), "test1 test2");
|
||||||
|
assert_equals(testBinding.StringMozPreference("dom.testbinding.preference_value.space_string_test"), "test1 test2");
|
||||||
}, "prefs");
|
}, "prefs");
|
||||||
</script>
|
</script>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue