blob: a5ab5885133e48655f46f9af68b8dad5b8e3e8d8 [file] [log] [blame]
<pre id="output"></pre>
<script>
function debug(msg)
{
var output = document.getElementById("output");
output.appendChild(document.createTextNode(msg + "\n"));
}
function testComputedStyle(property, fullRule)
{
var div = document.createElement("div");
document.body.appendChild(div);
div.setAttribute("style", property + ": " + fullRule);
var computedValue = div.style[property];
document.body.removeChild(div);
return computedValue;
}
function testImageSetRule(description, property, rule, expected)
{
debug("");
debug(`${description} : ${rule}`);
var rule = `image-set(${rule})`;
if (property == 'cursor')
rule += ', default';
if (testComputedStyle(property, rule) == rule)
debug("Unprefixed: PASS");
else
debug("Unprefixed: FAIL");
if (testComputedStyle(property, "-webkit-" + rule) == rule)
debug("Prefixed: PASS");
else
debug("Prefixed: FAIL");
}
if (window.testRunner)
window.testRunner.dumpAsText();
testImageSetRule("Single value for background-image",
"background-image",
"url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Multiple values for background-image",
"background-image",
"url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x");
testImageSetRule("Multiple values for background-image, out of order",
"background-image",
"url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Duplicate values for background-image",
"background-image",
"url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Fractional values for background-image",
"background-image",
"url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x");
testImageSetRule("Single value for cursor",
"cursor",
"url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Multiple values for cursor",
"cursor",
"url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x");
testImageSetRule("Multiple values for cursor, out of order",
"cursor",
"url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Duplicate values for cursor",
"cursor",
"url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Fractional values for cursor",
"cursor",
"url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x");
testImageSetRule("Single value for list-style-image",
"list-style-image",
"url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Multiple values for list-style-image",
"list-style-image",
"url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x");
testImageSetRule("Multiple values for list-style-image, out of order",
"list-style-image",
"url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Duplicate values for list-style-image",
"list-style-image",
"url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Fractional values for list-style-image",
"list-style-image",
"url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x");
testImageSetRule("Single value for content",
"content",
"url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Multiple values for content",
"content",
"url(\"http://www.webkit.org/a\") 1x, url(\"http://www.webkit.org/b\") 2x");
testImageSetRule("Multiple values for content, out of order",
"content",
"url(\"http://www.webkit.org/c\") 3x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Duplicate values for content",
"content",
"url(\"http://www.webkit.org/c\") 1x, url(\"http://www.webkit.org/b\") 2x, url(\"http://www.webkit.org/a\") 1x");
testImageSetRule("Fractional values for content",
"content",
"url(\"http://www.webkit.org/c\") 0.2x, url(\"http://www.webkit.org/b\") 2.3x, url(\"http://www.webkit.org/a\") 12.3456x");
</script>