1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
<!DOCTYPE html>
<html>
<head>
<title>Shape Outside Basic Shape Arguments</title>
<link rel="author" title="Adobe" href="http://html.adobe.com/">
<link rel="author" title="Bear Travis" href="mailto:betravis@adobe.com">
<link rel="reviewer" title="Alan Stearns" href="mailto:stearns@adobe.com"> <!-- 2014-03-04 -->
<link rel="help" href="http://www.w3.org/TR/css-shapes-1/#typedef-basic-shape">
<link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
<link rel="help" href="http://www.w3.org/TR/cssom-1/#serializing-css-values">
<meta name="assert" content="A basic basic shape can contain any length unit type, or percentage">
<meta name="flags" content="ahem dom">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support/parsing-utils.js"></script>
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
</head>
<body>
<div id="log"></div>
<script type="text/javascript">
// relative units: em, ex, ch, rem, vw, vh, vmin, vmax
// fixed units: cm, mm, in, px, pt, pc
// percentage unit: %
// zero length: 0
setup({explicit_done: true});
var basic_shape_args_tests = [
{
"name": "0-valued",
"actual": "polygon(nonzero, 0 0)",
"expected_inline": "polygon(0px 0px)",
"expected_computed": "polygon(0px 0px)"
},
{
"name": "Font relative units",
"actual": "polygon(nonzero, 1em 1ex, 1ch 1rem)",
"expected_inline": "polygon(1em 1ex, 1ch 1rem)",
"expected_computed": "polygon(1em 1ex, 1ch 1rem)" // converted to px by the framework
},
{
"name": "View relative units",
"actual": "polygon(nonzero, 1vw 1vh, 1vmin 1vmax)",
"expected_inline": "polygon(1vw 1vh, 1vmin 1vmax)",
"expected_computed": "polygon(1vw 1vh, 1vmin 1vmax)" // converted to px by the framework
},
{
"name": "Fixed units",
"actual": "polygon(nonzero, 1cm 1mm, 1in 1px, 1pt 1pc)",
"expected_inline": "polygon(1cm 1mm, 1in 1px, 1pt 1pc)",
"expected_computed": "polygon(1cm 1mm, 1in 1px, 1pt 1pc)" // converted to px by the framework
},
{
"name": "Percentage units",
"actual": "polygon(nonzero, 1% 2%)",
"expected_inline": "polygon(1% 2%)",
"expected_computed": "polygon(1% 2%)"
}
];
generate_tests( ParsingUtils.testInlineStyle,
ParsingUtils.buildTestCases(basic_shape_args_tests, "inline") );
ParsingUtils.setupFonts();
document.fonts.ready.then(()=> {
generate_tests( ParsingUtils.testComputedStyle,
ParsingUtils.buildTestCases(basic_shape_args_tests, "computed") );
ParsingUtils.restoreFonts();
done();
});
</script>
</body>
</html>
|