Fix text-overflow serialization.

Fixes https://github.com/servo/servo/issues/15208
This commit is contained in:
Alberto Leal 2017-01-25 12:20:37 -05:00
parent 2a32cf1352
commit cf59be7f44
3 changed files with 29 additions and 1 deletions

View file

@ -18,6 +18,7 @@
use style_traits::ToCss;
use values::NoViewportPercentage;
use values::computed::ComputedValueAsSpecified;
use cssparser;
impl ComputedValueAsSpecified for SpecifiedValue {}
impl NoViewportPercentage for SpecifiedValue {}
@ -75,7 +76,9 @@
match *self {
Side::Clip => dest.write_str("clip"),
Side::Ellipsis => dest.write_str("ellipsis"),
Side::String(ref s) => dest.write_str(s)
Side::String(ref s) => {
cssparser::serialize_string(s, dest)
}
}
}
}

View file

@ -78,3 +78,4 @@ mod mask;
mod position;
mod selectors;
mod supports;
mod text_overflow;

View file

@ -0,0 +1,24 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use cssparser::Parser;
use media_queries::CSSErrorReporterTest;
use style::parser::ParserContext;
use style::stylesheets::Origin;
use style_traits::ToCss;
#[test]
fn test_text_overflow() {
use style::properties::longhands::text_overflow;
assert_roundtrip_with_context!(text_overflow::parse, r#"clip"#);
assert_roundtrip_with_context!(text_overflow::parse, r#"ellipsis"#);
assert_roundtrip_with_context!(text_overflow::parse, r#"clip ellipsis"#);
assert_roundtrip_with_context!(text_overflow::parse, r#""x""#);
assert_roundtrip_with_context!(text_overflow::parse, r#"'x'"#, r#""x""#);
assert_roundtrip_with_context!(text_overflow::parse, r#"clip "x""#);
assert_roundtrip_with_context!(text_overflow::parse, r#""x" clip"#);
assert_roundtrip_with_context!(text_overflow::parse, r#""x" "y""#);
}