<!DOCTYPE html>
<html>
<head>
<script src="../../../resources/js-test-pre.js"></script>
</head>
<body>
<script src="parsing-test-utils.js"></script>
<script>
description('Testing parsing of the -webkit-shape-outside property.');

// The test functions and globals used here are defined parsing-test-utils.js.
validShapeValues.forEach(function(elt, i, a) {
    var value = (elt instanceof Array) ? elt[0] : elt;
    var expectedValue = (elt instanceof Array) ? elt[1] : elt;
    var computedValue = (elt instanceof Array && elt.length > 2) ? elt[2] : expectedValue;
    testShapeSpecifiedProperty("-webkit-shape-outside", value, expectedValue);
    testShapeComputedProperty("-webkit-shape-outside", value, computedValue);
});

testLocalURLShapeProperty("-webkit-shape-outside", "url(\'image\')", 'url("image")');

invalidShapeValues.forEach(function(value, i, a) { 
    testShapePropertyParsingFailure("-webkit-shape-outside", value, "none")
});

applyToEachArglist(
    testNotInheritedShapeProperty,
    [// [property, parentValue, childValue, expectedValue]
     ["-webkit-shape-outside", "none", "circle(30px at 10px 20px)", "parent: none, child: circle(30px at 10px 20px)"],
     ["-webkit-shape-outside", "circle(30px at 10px 20px)", "initial", "parent: circle(30px at 10px 20px), child: none"],
     ["-webkit-shape-outside", "circle(30px at 10px 20px)", "", "parent: circle(30px at 10px 20px), child: none"],
     ["-webkit-shape-outside", "circle(30px at 10px 20px)", "inherit", "parent: circle(30px at 10px 20px), child: circle(30px at 10px 20px)"],
     ["-webkit-shape-outside", "", "inherit", "parent: none, child: none"],
     ["-webkit-shape-outside", "none", "inherit", "parent: none, child: none"]]
);
</script>
<script src="../../../resources/js-test-post.js"></script>
</body>
</html>
