51 lines
2.3 KiB
HTML
51 lines
2.3 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
<html>
|
|
<head>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
</head>
|
|
<body>
|
|
<p id="description"></p>
|
|
<div id="console"></div>
|
|
<script>
|
|
description("This test checks the SVGAnimatedEnumeration API - utilizing the clipPathUnits property of SVGClipPathElement");
|
|
|
|
var clipPathElement = document.createElementNS("http://www.w3.org/2000/svg", "clipPath");
|
|
|
|
debug("");
|
|
debug("Check initial clipPathUnits value");
|
|
shouldBeEqualToString("clipPathElement.clipPathUnits.toString()", "[object SVGAnimatedEnumeration]");
|
|
shouldBeEqualToString("typeof(clipPathElement.clipPathUnits.baseVal)", "number");
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE");
|
|
|
|
debug("");
|
|
debug("Check that enumerations are static, caching value in a local variable and modifying it, should have no effect");
|
|
var enumRef = clipPathElement.clipPathUnits.baseVal;
|
|
enumRef = SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX;
|
|
shouldBe("enumRef", "SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX");
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE");
|
|
|
|
debug("");
|
|
debug("Check assigning various valid and invalid values");
|
|
shouldThrow("clipPathElement.clipPathUnits.baseVal = 3");
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE");
|
|
shouldThrow("clipPathElement.clipPathUnits.baseVal = -1");
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE");
|
|
|
|
// ECMA-262, 9.7, "ToUint16"
|
|
shouldBeEqualToString("clipPathElement.clipPathUnits.baseVal = '1'", SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE.toString());
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE");
|
|
|
|
// ECMA-262, 9.7, "ToUint16"
|
|
shouldThrow("clipPathElement.clipPathUnits.baseVal = 'aString'");
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_USERSPACEONUSE");
|
|
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal = 2", "SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX");
|
|
shouldThrow("clipPathElement.clipPathUnits.baseVal = clipPathElement");
|
|
shouldBe("clipPathElement.clipPathUnits.baseVal", "SVGUnitTypes.SVG_UNIT_TYPE_OBJECTBOUNDINGBOX");
|
|
|
|
successfullyParsed = true;
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</body>
|
|
</html>
|