<!DOCTYPE html>
<html>
  <head>
    <title>CSS Backgrounds and Borders Test: background shorthand - only one &lt;box&gt; value</title>
    <link rel="author" title="Intel" href="http://www.intel.com" />
    <link rel="help" href="http://www.w3.org/TR/css3-background/#the-background" />
    <meta name="flags" content="dom" />
    <meta name="assert" content="Check if one <box> value is present then it sets both 'background-origin' and 'background-clip' to that value" />
    <style>
        #test {
            background: content-box;
        }
    </style>
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
  </head>
  <body>
    <div id="log"></div>
    <div id="test"></div>
    <script>
        var cs = getComputedStyle(document.getElementById("test"), null);

        test(function() {
            assert_equals(cs.getPropertyValue("background-origin"),
                "content-box", "background specified value for background-origin");
        }, "background_specified_box_one_origin");

        test(function() {
            assert_equals(cs.getPropertyValue("background-clip"),
                "content-box", "background specified value for background-clip");
        }, "background_specified_box_one_clip");
    </script>
  </body>
</html>
