Skip to content

Commit

Permalink
CSS: Parsing tests for logical margin and padding properties
Browse files Browse the repository at this point in the history
Web Platform Tests for parsing and serialization of
margin-block-start, margin-block-end,
margin-inline-start, margin-inline-end,
padding-block-start, padding-block-end,
padding-inline-start, padding-inline-end.
https://drafts.csswg.org/css-logical/#margin-properties
https://drafts.csswg.org/css-logical/#padding-properties

Change-Id: I900cbc622d9d4ab233fe59d5a6ba7078e904878f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1650693
Auto-Submit: Eric Willigers <ericwilligers@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Reviewed-by: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#667898}
  • Loading branch information
ericwilligers authored and chromium-wpt-export-bot committed Jun 11, 2019
1 parent f4751f2 commit 3436929
Show file tree
Hide file tree
Showing 4 changed files with 119 additions and 0 deletions.
25 changes: 25 additions & 0 deletions css/css-logical/parsing/margin-block-inline-invalid.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing margin-block and margin-inline with invalid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-margin-block">
<meta name="assert" content="margin-block, margin-inline support only the grammar '<'margin-top'>{1,2}'.">
<meta name="assert" content="margin-block, margin-inline longhands support only the grammar '<'margin-top'>'.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_invalid_value("margin-block-start", "none");
test_invalid_value("margin-block-end", "10");
test_invalid_value("margin-inline-start", "20% calc(10px - 0.5em)");
test_invalid_value("margin-inline-end", "10px, auto");

test_invalid_value("margin-block", "none");
test_invalid_value("margin-block", "20%, calc(10px - 0.5em)");
test_invalid_value("margin-inline", "10px auto 20px");
</script>
</body>
</html>
32 changes: 32 additions & 0 deletions css/css-logical/parsing/margin-block-inline-valid.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing margin-block and margin-inline with valid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-margin-block">
<meta name="assert" content="margin-block, margin-inline support the full grammar '<'margin-top'>{1,2}'.">
<meta name="assert" content="margin-block, margin-inline longhands support the full grammar '<'margin-top'>'.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_valid_value("margin-block-start", "calc(20% + 10px)");
test_valid_value("margin-block-start", "auto");
test_valid_value("margin-block-end", "-10px");
test_valid_value("margin-inline-start", "-20%");
test_valid_value("margin-inline-end", "calc(2em + 3ex)");

test_valid_value("margin-block", "auto");
test_valid_value("margin-block", "-10px");
test_valid_value("margin-block", "calc(2em + 3ex) -20%");
test_valid_value("margin-block", "auto auto", "auto");
test_valid_value("margin-block", "-20% calc(20% + 10px)");
test_valid_value("margin-inline", "20%");
test_valid_value("margin-inline", "calc(2em + 3ex)");
test_valid_value("margin-inline", "-10px auto");
test_valid_value("margin-inline", "auto calc(2em + 3ex)");
</script>
</body>
</html>
35 changes: 35 additions & 0 deletions css/css-logical/parsing/padding-block-inline-invalid.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing padding-block and padding-inline with invalid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-padding-block">
<meta name="assert" content="padding-block, padding-inline support only the grammar '<'padding-top'>{1,2}'.">
<meta name="assert" content="padding-block, padding-inline longhands support only the grammar '<'padding-top'>'.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_invalid_value("padding-block-start", "none");
test_invalid_value("padding-block-start", "-10px");
test_invalid_value("padding-block-end", "1px 2px");
test_invalid_value("padding-block-end", "auto");
test_invalid_value("padding-block-end", "10");
test_invalid_value("padding-block-end", "1px, 2px");
test_invalid_value("padding-inline-start", "20% calc(10px - 0.5em)");
test_invalid_value("padding-inline-start", "2px auto");
test_invalid_value("padding-inline-end", "-20%");
test_invalid_value("padding-inline-end", "10px, auto");

test_invalid_value("padding-block", "none");
test_invalid_value("padding-block", "20% -10px");
test_invalid_value("padding-block", "auto, -10px");
test_invalid_value("padding-block", "20%, calc(10px - 0.5em)");
test_invalid_value("padding-inline", "10px auto 20px");
test_invalid_value("padding-inline", "1px 2px 3px");
test_invalid_value("padding-inline", "-20% calc(20% + 10px)");
</script>
</body>
</html>
27 changes: 27 additions & 0 deletions css/css-logical/parsing/padding-block-inline-valid.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing padding-block and padding-inline with valid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-padding-block">
<meta name="assert" content="padding-block, padding-inline support the full grammar '<'padding-top'>{1,2}'.">
<meta name="assert" content="padding-block, padding-inline longhands support the full grammar '<'padding-top'>'.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
test_valid_value("padding-block-start", "0", "0px");
test_valid_value("padding-block-start", "calc(20% + 10px)");
test_valid_value("padding-block-end", "10px");
test_valid_value("padding-inline-start", "20%");
test_valid_value("padding-inline-end", "calc(2em + 2ex)");

test_valid_value("padding-block", "10px");
test_valid_value("padding-block", "10px 20%");
test_valid_value("padding-inline", "20%");
test_valid_value("padding-inline", "20% calc(20% + 10px)");
</script>
</body>
</html>

0 comments on commit 3436929

Please sign in to comment.