Use off/- instead of 0/1 when serializing

This commit is contained in:
rwakulszowa 2016-10-25 20:06:37 +02:00
parent f33388fde3
commit d6fa6e453a
2 changed files with 9 additions and 6 deletions

View file

@ -411,7 +411,11 @@ ${helpers.single_keyword("font-variant-position",
impl ToCss for FeatureTagValue {
fn to_css<W>(&self, dest: &mut W) -> fmt::Result where W: fmt::Write {
let s = format!("\"{}\" {}", self.tag, self.value);
let s = match self.value {
1 => format!("\"{}\"", self.tag),
0 => format!("\"{}\" off", self.tag),
x => format!("\"{}\" {}", self.tag, x)
};
dest.write_str(&s)
}
}

View file

@ -70,10 +70,9 @@ fn font_feature_settings_should_throw_on_bad_input() {
#[test]
fn font_feature_settings_to_css() {
assert_roundtrip_with_context!(font_feature_settings::parse, "normal");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\"", "\"abcd\" 1");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\" on", "\"abcd\" 1");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\" off", "\"abcd\" 0");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\"");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\" on", "\"abcd\"");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\" off");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\" 4");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\", \"efgh\"",
"\"abcd\" 1, \"efgh\" 1");
assert_roundtrip_with_context!(font_feature_settings::parse, "\"abcd\", \"efgh\"");
}