Fix parsing/serialization bug in contain property

This commit is contained in:
Nazım Can Altınova 2017-04-17 22:36:45 +03:00
parent 86aa4e89c5
commit 05a4febc40
No known key found for this signature in database
GPG key ID: AF9BCD7CE6449954
2 changed files with 17 additions and 5 deletions

View file

@ -3,6 +3,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
use parsing::parse;
use style_traits::ToCss;
#[test]
fn contain_longhand_should_parse_correctly() {
@ -13,11 +14,20 @@ fn contain_longhand_should_parse_correctly() {
assert_eq!(none, SpecifiedValue::empty());
let strict = parse_longhand!(contain, "strict");
assert_eq!(strict, contain::STRICT);
assert_eq!(strict, contain::STRICT | contain::STRICT_BITS);
let strict = parse_longhand!(contain, "content");
assert_eq!(strict, contain::CONTENT | contain::CONTENT_BITS);
let style_paint = parse_longhand!(contain, "style paint");
assert_eq!(style_paint, contain::STYLE | contain::PAINT);
assert_roundtrip_with_context!(contain::parse, "strict");
assert_roundtrip_with_context!(contain::parse, "size layout style paint");
assert_roundtrip_with_context!(contain::parse, "content");
assert_roundtrip_with_context!(contain::parse, "layout style paint");
// Assert that the `2px` is not consumed, which would trigger parsing failure in real use
assert_parser_exhausted!(contain::parse, "layout 2px", false);
}