253 lines
11 KiB
HTML
253 lines
11 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="../../svg/dynamic-updates/resources/SVGTestCase.js"></script>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
<script>
|
|
if (window.testRunner)
|
|
testRunner.dumpAsText();
|
|
|
|
description("Test strict color parsing on SVG presentation attributes.")
|
|
createSVGTestCase();
|
|
|
|
var rect = createSVGElement("rect");
|
|
rect.setAttribute("id", "rect");
|
|
rect.setAttribute("width", "100px");
|
|
rect.setAttribute("height", "100px");
|
|
rootSVGElement.appendChild(rect);
|
|
|
|
|
|
// Testing 'fill'
|
|
// The default for fill is black.
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 0, 0)");
|
|
|
|
// Set the fill color to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
// Set following colors should be invalid.
|
|
rect.setAttribute("fill", "f00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("fill", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("fill", "ff0000");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("fill", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("fill", "");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("fill", "url(#reference)");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", 'url("#reference")');
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("fill", "url(#reference) green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", 'url("#reference") rgb(0, 128, 0)');
|
|
// Reset to green.
|
|
rect.setAttribute("fill", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).fill", "rgb(0, 128, 0)");
|
|
|
|
|
|
// Testing 'stroke'
|
|
// The default stroke value should be 'none'.
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "none");
|
|
|
|
// Set the stroke color to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
// Set following colors should be invalid.
|
|
rect.setAttribute("stroke", "f00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "none");
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stroke", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "none");
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stroke", "ff0000");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "none");
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stroke", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "none");
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stroke", "");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "none");
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stroke", "url(#reference)");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", 'url("#reference")');
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stroke", "url(#reference) green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", 'url("#reference") rgb(0, 128, 0)');
|
|
// Reset to green.
|
|
rect.setAttribute("stroke", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stroke", "rgb(0, 128, 0)");
|
|
|
|
|
|
// Testing 'color'
|
|
// The default for color is rgb(0, 0, 0).
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 0, 0)");
|
|
|
|
// Set color to green.
|
|
rect.setAttribute("color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 128, 0)");
|
|
|
|
// Set following colors should be invalid.
|
|
rect.setAttribute("color", "f00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("color", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("color", "ff0000");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("color", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("color", "");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).color", "rgb(0, 128, 0)");
|
|
|
|
|
|
// Testing 'stop-color'
|
|
// The default for stop-color is rgb(0, 0, 0).
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 0, 0)");
|
|
|
|
// Set color to green.
|
|
rect.setAttribute("stop-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 128, 0)");
|
|
|
|
// Set following colors should be invalid.
|
|
rect.setAttribute("stop-color", "f00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("stop-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stop-color", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("stop-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stop-color", "ff0000");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("stop-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stop-color", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("stop-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("stop-color", "");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("stop-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).stopColor", "rgb(0, 128, 0)");
|
|
|
|
|
|
// Testing 'flood-color'
|
|
// The default for flood-color is rgb(0, 0, 0).
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 0, 0)");
|
|
|
|
// Set color to green.
|
|
rect.setAttribute("flood-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 128, 0)");
|
|
|
|
// Set following colors should be invalid.
|
|
rect.setAttribute("flood-color", "f00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("flood-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("flood-color", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("flood-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("flood-color", "ff0000");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("flood-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("flood-color", "ff00");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("flood-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 128, 0)");
|
|
|
|
rect.setAttribute("flood-color", "");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 0, 0)");
|
|
// Reset to green.
|
|
rect.setAttribute("flood-color", "green");
|
|
shouldBeEqualToString("document.defaultView.getComputedStyle(rect, null).floodColor", "rgb(0, 128, 0)");
|
|
|
|
var successfullyParsed = true;
|
|
|
|
completeTest();
|
|
</script>
|
|
</body>
|
|
</html>
|