<!DOCTYPE html>
<html>
    <head>
        <title>Shape Outside Basic Shape Computed Percentage Lengths</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/#shape-outside-property">
        <link rel="help" href="http://www.w3.org/TR/css-cascade-3/#computed">
        <meta name="assert" content="The basic shape can contain percentages, which remain unchanged when computed">
        <meta name="flags" content="dom">
        <script src="../../../../resources/testharness.js"></script>
        <script src="../../../../resources/testharnessreport.js"></script>
        <script src="support/parsing-utils.js"></script>
    </head>
    <body>
        <div id="log"></div>
        <script type="text/javascript">
            var valid_polygon_tests = [
                {
                    "name": "inset",
                    "actual": "inset(10% 20% 30% 40% round 10% 20% 30% 40% / 10% 20% 30% 40%)",
                    "expected_computed": "inset(10% 20% 30% 40% round 10% 20% 30% 40%)"
                },
                {
                    "name": "circle",
                    "actual": "circle(10% at 10% 20%)",
                    "expected_computed": "circle(10% at 10% 20%)"
                },
                {
                    "name": "ellipse",
                    "actual": "ellipse(10% 20% at 10% 20%)",
                    "expected_computed": "ellipse(10% 20% at 10% 20%)"
                },
                {
                    "name": "polygon",
                    "actual": "polygon(nonzero, 10% 20%, 30% 40%, 50% 60%)",
                    "expected_computed": "polygon(10% 20%, 30% 40%, 50% 60%)"
                }
            ];

            generate_tests( ParsingUtils.testComputedStyle,
                            ParsingUtils.buildTestCases(valid_polygon_tests, "computed") );
        </script>
    </body>
</html>
