203 lines
7.9 KiB
XML
203 lines
7.9 KiB
XML
<svg id="svg-root" width="100%" height="100%"
|
|
viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<!--======================================================================-->
|
|
<!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
|
|
<!--= Institute of Technology, European Research Consortium for =-->
|
|
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
|
<!--= All Rights Reserved. =-->
|
|
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
|
<!--======================================================================-->
|
|
<d:SVGTestCase xmlns:d="http://www.w3.org/2000/02/svg/testsuite/description/"
|
|
template-version="1.4" reviewer="CM" author="ED" status="reviewed"
|
|
version="$Revision: 1.9 $" testname="$RCSfile: svgdom-over-01-f.svg,v $">
|
|
<d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/svgdom.html#SVGDOMOverview">
|
|
<p>
|
|
This tests how unspecified attributes affect the return values from the
|
|
SVG DOM methods related to attributes.
|
|
</p>
|
|
<p>
|
|
After loading the test, you should see a list of red or green rectangles followed by some text describing each subtest.
|
|
</p>
|
|
</d:testDescription>
|
|
<d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
Run the test. No interaction required.
|
|
</p>
|
|
</d:operatorScript>
|
|
<d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
|
|
<p>
|
|
The test has passed if there is a line of text saying "Test status: PASSED", and there is a green rectangle to the left of that text.
|
|
</p>
|
|
</d:passCriteria>
|
|
</d:SVGTestCase>
|
|
<title id="test-title">$RCSfile: svgdom-over-01-f.svg,v $</title>
|
|
<defs>
|
|
<font-face
|
|
font-family="SVGFreeSansASCII"
|
|
unicode-range="U+0-7F">
|
|
<font-face-src>
|
|
<font-face-uri xlink:href="../custom/resources/SVGFreeSans.svg#ascii"/>
|
|
</font-face-src>
|
|
</font-face>
|
|
</defs>
|
|
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
|
<defs>
|
|
<rect id="r" width="1" height="1"/>
|
|
<stop id="s"/>
|
|
<feConvolveMatrix id="c"/>
|
|
<image id="i" xlink:href="http://example.org/image.jpg" width="1" height="1"/>
|
|
<radialGradient id="g"/>
|
|
<text id="t"/>
|
|
<text id="tt">sometext</text>
|
|
<marker id="m"/>
|
|
<svg id="v"/>
|
|
<filter id="f"/>
|
|
<polygon id="p"/>
|
|
</defs>
|
|
|
|
<script><![CDATA[
|
|
var ypos = 50;
|
|
var r = document.getElementById("r");
|
|
var s = document.getElementById("s");
|
|
var c = document.getElementById("c");
|
|
var i = document.getElementById("i");
|
|
var g = document.getElementById("g");
|
|
var t = document.getElementById("t");
|
|
var tt = document.getElementById("tt");
|
|
var m = document.getElementById("m");
|
|
var v = document.getElementById("v");
|
|
var f = document.getElementById("f");
|
|
var p = document.getElementById("p");
|
|
|
|
i.removeAttributeNS("http://www.w3.org/1999/xlink", "href");
|
|
|
|
function Subtest(str, code)
|
|
{
|
|
this.str = str;
|
|
this.code = code ? code : str;
|
|
}
|
|
|
|
Subtest.prototype.getStr = function()
|
|
{
|
|
return this.str;
|
|
}
|
|
|
|
Subtest.prototype.getCode = function()
|
|
{
|
|
return this.code;
|
|
}
|
|
|
|
function verify(str, result)
|
|
{
|
|
var g = document.createElementNS("http://www.w3.org/2000/svg", "g");
|
|
var r = document.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
var t = document.createElementNS("http://www.w3.org/2000/svg", "text");
|
|
t.appendChild(document.createTextNode(str + ": " + (result ? "PASSED" : "FAILED")));
|
|
t.setAttribute("class", "result");
|
|
t.setAttribute("font-size", "9px");
|
|
t.setAttribute("fill", "black");
|
|
t.setAttribute("x", "10");
|
|
t.setAttribute("y", "7");
|
|
r.setAttribute("y", "1");
|
|
r.setAttribute("width", "5");
|
|
r.setAttribute("height", "5");
|
|
g.setAttribute("fill", result ? "lime" : "red");
|
|
g.appendChild(r);
|
|
g.appendChild(t);
|
|
g.setAttribute("transform", "translate(10 " + ypos + ")");
|
|
ypos += 10;
|
|
document.getElementById("test-body-content").appendChild(g);
|
|
if(result)
|
|
passes++;
|
|
}
|
|
|
|
var passes = 0;
|
|
var tests = [
|
|
// test SVGLength
|
|
new Subtest("r.x.baseVal.value == 0"),
|
|
new Subtest("r.x.baseVal.unitType == 1 (SVG_LENGTHTYPE_NUMBER)", "r.x.baseVal.unitType == 1"),
|
|
new Subtest("v.width.baseVal.valueInSpecifiedUnits == 100"),
|
|
new Subtest("v.width.baseVal.unitType == 2 (SVG_LENGTHTYPE_PERCENTAGE)", "v.width.baseVal.unitType == 2"),
|
|
new Subtest("tt.textLength.baseVal.value == tt.getComputedTextLength()"),
|
|
|
|
// test SVGAnimatedNumber
|
|
new Subtest("s.offset.baseVal == 0"),
|
|
|
|
// test SVGAnimatedBoolean
|
|
new Subtest("c.preserveAlpha.baseVal == false"),
|
|
|
|
// test SVGAnimatedString / DOMString
|
|
new Subtest("c.className.baseVal == \"\""),
|
|
new Subtest("i.href.baseVal == \"\""),
|
|
|
|
// test SVGStringList
|
|
new Subtest("i.requiredFeatures.numberOfItems == 0"),
|
|
|
|
// SVGAnimatedNumberList
|
|
new Subtest("c.kernelMatrix.baseVal.numberOfItems == 0"),
|
|
|
|
// SVGAnimatedLengthList
|
|
new Subtest("t.x.baseVal.numberOfItems == 0"),
|
|
|
|
// SVGAnimatedPointsList / SVGPointList
|
|
new Subtest("p.points.numberOfItems == 0"),
|
|
|
|
// SVGAnimatedEnumeration
|
|
new Subtest("g.gradientUnits.baseVal == 2 (SVG_UNIT_TYPE_OBJECTBOUNDINGBOX)", "g.gradientUnits.baseVal == 2"),
|
|
|
|
// SVGAnimatedInteger
|
|
new Subtest("c.orderX.baseVal == 0"),
|
|
|
|
// SVGAnimatedAngle
|
|
new Subtest("m.orientAngle.baseVal.value == 0"),
|
|
new Subtest("m.orientAngle.baseVal.unitType == 1 (SVG_ANGLETYPE_UNSPECIFIED)", "m.orientAngle.baseVal.unitType == 1"),
|
|
|
|
// SVGAnimatedRect / SVGRect
|
|
new Subtest("v.viewBox.baseVal.[x,y,width,height] == 0",
|
|
"v.viewBox.baseVal.x == 0 && v.viewBox.baseVal.y == 0 && v.viewBox.baseVal.width == 0 && v.viewBox.baseVal.height == 0"),
|
|
|
|
// SVGAnimatedTransformList
|
|
new Subtest("t.transform.baseVal.numberOfItems == 0"),
|
|
|
|
// SVGAnimatedPreserveAspectRatio / SVGPreserveAspectRatio
|
|
new Subtest("v.preserveAspectRatio.baseVal.align == 6 (SVG_PRESERVEASPECTRATIO_XMIDYMID)", "v.preserveAspectRatio.baseVal.align == 6"),
|
|
new Subtest("v.preserveAspectRatio.baseVal.meetOrSlice == 1 (SVG_MEETORSLICE_MEET)", "v.preserveAspectRatio.baseVal.meetOrSlice == 1"),
|
|
|
|
// SVGZoomAndPan
|
|
new Subtest("v.zoomAndPan == 2 (SVG_ZOOMANDPAN_MAGNIFY)", "v.zoomAndPan == 2")
|
|
];
|
|
|
|
try {
|
|
for (var k = 0; k < tests.length; k++)
|
|
{
|
|
try
|
|
{
|
|
verify(tests[k].getStr(), eval(tests[k].getCode()));
|
|
}
|
|
catch(e)
|
|
{
|
|
verify(tests[k].getStr(), false);
|
|
}
|
|
}
|
|
}
|
|
finally
|
|
{
|
|
verify("Test status", tests.length == passes);
|
|
}
|
|
]]></script>
|
|
|
|
</g>
|
|
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
|
<text id="revision" x="10" y="340" stroke="none"
|
|
fill="black">$Revision: 1.9 $</text>
|
|
</g>
|
|
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
|
|
<!-- comment out this watermark once the test is approved -->
|
|
<g id="draft-watermark">
|
|
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
|
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
|
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
|
</g>
|
|
</svg>
|