<!DOCTYPE html>
<html>
    <head>
        <title>Shape Outside Ellipse Radii - invalid args</title>
        <link rel="author" title="Adobe" href="http://html.adobe.com/">
        <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@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/#funcdef-ellipse">
        <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property">
        <meta name="assert" content="This test verifies that invalid shape-radius arguments on ellipse() don't parse.">
        <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>
    </head>
    <body>
        <div id="log"></div>
        <script type="text/javascript">
            var invalid_ellipse_radiii_tests = [
                {"name": "ellipse(foo)"},
                {"name": "ellipse(10)"},
                {"name": "ellipse(20px 30px 40px)"},
                {"name": "ellipse(20% 30% 40%)"},
                {"name": "ellipse(20px, 30px, 40px)"},
                {"name": "ellipse(20%, 30%, 40%)"},
                {"name": "ellipse(20px 30px closest-side)"},
                {"name": "ellipse(20px 30px farthest-side)"},
                {"name": "ellipse(closest-side 20px 30px)"},
                {"name": "ellipse(farthest-side 20px 30px)"},
                {"name": "ellipse(20% 30% closest-side)"},
                {"name": "ellipse(20% 30% farthest-side)"},
                {"name": "ellipse(closest-side 20% 30%)"},
                {"name": "ellipse(farthest-side 20% 30%)"},
                {"name": "ellipse(closest-side farthest-side 20px)"},
                {"name": "ellipse(closest-side farthest-side 20%)"},
                {"name": "ellipse(farthest-side closest-side closest-side)"},
                {"name": "ellipse(farthest-side, closest-side, closest-side)"}
            ];
            generate_tests( ParsingUtils.testInlineStyle,
                            ParsingUtils.buildTestCases(invalid_ellipse_radiii_tests) );
        </script>
    </body>
</html>
