[librsvg: 3/15] Add some more tests from the SVG1.1 test suite
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg: 3/15] Add some more tests from the SVG1.1 test suite
- Date: Tue, 24 Nov 2020 18:09:13 +0000 (UTC)
commit e7e66aab550ac339ea7f39a8999304c743518a30
Author: Federico Mena Quintero <federico gnome org>
Date: Tue Nov 17 13:26:56 2020 -0600
Add some more tests from the SVG1.1 test suite
.../reftests/svg1.1/masking-path-08-b-ref.png | Bin 0 -> 6407 bytes
.../fixtures/reftests/svg1.1/masking-path-08-b.svg | 140 ++++++++++
.../reftests/svg1.1/struct-group-03-t-ref.png | Bin 0 -> 18066 bytes
.../fixtures/reftests/svg1.1/struct-group-03-t.svg | 285 +++++++++++++++++++++
.../reftests/svg1.1/struct-use-10-f-ref.png | Bin 0 -> 6356 bytes
tests/fixtures/reftests/svg1.1/struct-use-10-f.svg | 130 ++++++++++
.../reftests/svg1.1/styling-css-01-b-ref.png | Bin 0 -> 8879 bytes
.../fixtures/reftests/svg1.1/styling-css-01-b.svg | 90 +++++++
.../reftests/svg1.1/styling-css-02-b-ref.png | Bin 0 -> 8958 bytes
.../fixtures/reftests/svg1.1/styling-css-02-b.svg | 85 ++++++
.../reftests/svg1.1/styling-css-03-b-ref.png | Bin 0 -> 10046 bytes
.../fixtures/reftests/svg1.1/styling-css-03-b.svg | 106 ++++++++
.../reftests/svg1.1/styling-css-04-f-ref.png | Bin 0 -> 7769 bytes
.../fixtures/reftests/svg1.1/styling-css-04-f.svg | 157 ++++++++++++
.../reftests/svg1.1/styling-css-07-f-ref.png | Bin 0 -> 4358 bytes
.../fixtures/reftests/svg1.1/styling-css-07-f.svg | 62 +++++
.../reftests/svg1.1/styling-css-08-f-ref.png | Bin 0 -> 10536 bytes
.../fixtures/reftests/svg1.1/styling-css-08-f.svg | 116 +++++++++
18 files changed, 1171 insertions(+)
---
diff --git a/tests/fixtures/reftests/svg1.1/masking-path-08-b-ref.png
b/tests/fixtures/reftests/svg1.1/masking-path-08-b-ref.png
new file mode 100644
index 00000000..d7702c11
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/masking-path-08-b-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/masking-path-08-b.svg
b/tests/fixtures/reftests/svg1.1/masking-path-08-b.svg
new file mode 100644
index 00000000..17291ade
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/masking-path-08-b.svg
@@ -0,0 +1,140 @@
+<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.3" reviewer="CM" author="ED" status="accepted"
+ version="$Revision: 1.7 $" testname="$RCSfile: masking-path-08-b.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/masking.html#EstablishingANewClippingPath">
+ <p>
+ This tests a few 'clip-path' cases to see that clipping paths are applied and constructed properly.
+ </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>
+ There are nine subtests in this test. There should be a big stroked rectangle with nine smaller
rectangles inside. If all of the smaller rectangles are green the test has passed.
+ </p>
+ <p>
+ The test has passed if:
+ </p>
+ <ul>
+ <li>There is no red visible.</li>
+ <li>Each of the nine small rectangles are green.</li>
+ </ul>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: masking-path-08-b.svg,v $</title>
+ <defs>
+ <font-face
+ font-family="SVGFreeSansASCII"
+ unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+
+ <defs>
+ <clipPath id="emptyclip">
+ </clipPath>
+ <clipPath id="hiddenclip">
+ <rect width="100" height="100" visibility="hidden"/>
+ </clipPath>
+ <clipPath id="displayclip">
+ <rect width="100" height="100" display="none"/>
+ </clipPath>
+ <clipPath id="opacityclip">
+ <rect width="100" height="100" opacity="0"/>
+ </clipPath>
+ <clipPath id="strokefillclip">
+ <rect width="100" height="100" stroke="none" fill="none"/>
+ </clipPath>
+ <clipPath id="strokewidthclip">
+ <rect x="40" y="40" width="20" height="20" stroke="black" stroke-width="80"/>
+ </clipPath>
+ <clipPath id="strokeopacityclip">
+ <rect x="40" y="40" width="20" height="20" stroke="black" stroke-opacity="0"
stroke-width="80"/>
+ </clipPath>
+ <clipPath id="fillopacityclip">
+ <rect width="100" height="100" fill-opacity="0"/>
+ </clipPath>
+ </defs>
+
+ <text x="240" y="50" text-anchor="middle">Establishing a new clipping path</text>
+
+ <g transform="scale(0.5) translate(320 200)">
+ <rect width="100" height="100" fill="lime"/>
+ <rect width="100" height="100" fill="red" clip-path="url(#emptyclip)"/>
+
+ <g transform="translate(110 0)">
+ <rect width="100" height="100" fill="lime"/>
+ <rect width="100" height="100" fill="red" clip-path="url(#hiddenclip)"/>
+ </g>
+
+ <g transform="translate(220 0)">
+ <rect width="100" height="100" fill="lime"/>
+ <rect width="100" height="100" fill="red" clip-path="url(#displayclip)"/>
+ </g>
+
+ <!-- This has an intentionally broken clip-path url -->
+ <g transform="translate(0 110)">
+ <rect x="0.5" y="0.5" width="99" height="99" fill="red"/>
+ <rect width="100" height="100" fill="lime" clip-path="url(#unknown)"/>
+ </g>
+
+ <g transform="translate(110 110)">
+ <rect x="0.5" y="0.5" width="99" height="99" fill="red"/>
+ <rect width="100" height="100" fill="lime" clip-path="url(#opacityclip)"/>
+ </g>
+
+ <g transform="translate(220 110)">
+ <rect x="0.5" y="0.5" width="99" height="99" fill="red"/>
+ <rect width="100" height="100" fill="lime" clip-path="url(#strokefillclip)"/>
+ </g>
+
+ <g transform="translate(0 220)">
+ <rect width="100" height="100" fill="lime"/>
+ <rect width="100" height="100" fill="red" clip-path="url(#strokewidthclip)"/>
+ <rect x="39" y="39" width="22" height="22" fill="lime"/>
+ </g>
+
+ <g transform="translate(110 220)">
+ <rect width="100" height="100" fill="lime"/>
+ <rect width="100" height="100" fill="red"
clip-path="url(#strokeopacityclip)"/>
+ <rect x="39" y="39" width="22" height="22" fill="lime"/>
+ </g>
+
+ <g transform="translate(220 220)">
+ <rect x="0.5" y="0.5" width="99" height="99" fill="red"/>
+ <rect width="100" height="100" fill="lime" clip-path="url(#fillopacityclip)"/>
+ </g>
+
+ <rect width="320" height="320" fill="none" stroke="black"/>
+ </g>
+
+
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none"
+ fill="black">$Revision: 1.7 $</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>
diff --git a/tests/fixtures/reftests/svg1.1/struct-group-03-t-ref.png
b/tests/fixtures/reftests/svg1.1/struct-group-03-t-ref.png
new file mode 100644
index 00000000..96bb194a
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/struct-group-03-t-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/struct-group-03-t.svg
b/tests/fixtures/reftests/svg1.1/struct-group-03-t.svg
new file mode 100644
index 00000000..975e707d
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/struct-group-03-t.svg
@@ -0,0 +1,285 @@
+<svg version="1.1" baseProfile="tiny" 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">
+ <!--======================================================================-->
+ <!--= SVG 1.1 2nd Edition Test Case =-->
+ <!--======================================================================-->
+ <!--= Copyright 2009 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="CN" author="VH" status="accepted"
+ version="$Revision: 1.5 $" testname="$RCSfile: struct-group-03-t.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/struct.html#Groups">
+ <p>
+ This test validates that properties are inherited (or not, depending on
+ their defintion), from a group to its children.
+ </p>
+ </d:testDescription>
+ <d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ [[
+ Describe how to use the here. The instructions should specify any
+ steps requied to run the test or any manual operation that need
+ to be performed to run the test.
+ ]]
+ </p>
+ </d:operatorScript>
+ <d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ The two rows displayed in this test should be identical. In the top row,
+ each property is set to the value 'inherit'. In the bottom row, which is
+ the reference, each property is set to the value that should be inherited
+ in the top row.
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: struct-group-03-t.svg,v $</title>
+ <defs>
+ <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+ <g id="grid" transform="translate(70, 150) rotate(-90)" fill="none" stroke="black">
+ <defs>
+ <rect id="propertyCell" x="-5" y="-14" width="110" height="22"/>
+ <rect id="sampleCell" x="-5" y="-14" width="50" height="22"/>
+ </defs>
+
+ <use xlink:href="#propertyCell"/>
+ <use xlink:href="#propertyCell" y="22"/>
+ <use xlink:href="#propertyCell" y="44"/>
+ <use xlink:href="#propertyCell" y="66"/>
+ <use xlink:href="#propertyCell" y="88"/>
+ <use xlink:href="#propertyCell" y="110"/>
+ <use xlink:href="#propertyCell" y="132"/>
+ <use xlink:href="#propertyCell" y="154"/>
+ <use xlink:href="#propertyCell" y="176"/>
+ <use xlink:href="#propertyCell" y="198"/>
+ <use xlink:href="#propertyCell" y="220"/>
+ <use xlink:href="#propertyCell" y="242"/>
+ <use xlink:href="#propertyCell" y="264"/>
+ <use xlink:href="#propertyCell" y="286"/>
+ <use xlink:href="#propertyCell" y="308"/>
+ <use xlink:href="#propertyCell" y="330"/>
+ <use xlink:href="#propertyCell" y="352"/>
+
+ <g transform="translate(-50, 0)">
+ <use xlink:href="#sampleCell"/>
+ <use xlink:href="#sampleCell" y="22"/>
+ <use xlink:href="#sampleCell" y="44"/>
+ <use xlink:href="#sampleCell" y="66"/>
+ <use xlink:href="#sampleCell" y="88"/>
+ <use xlink:href="#sampleCell" y="110"/>
+ <use xlink:href="#sampleCell" y="132"/>
+ <use xlink:href="#sampleCell" y="154"/>
+ <use xlink:href="#sampleCell" y="176"/>
+ <use xlink:href="#sampleCell" y="198"/>
+ <use xlink:href="#sampleCell" y="220"/>
+ <use xlink:href="#sampleCell" y="242"/>
+ <use xlink:href="#sampleCell" y="264"/>
+ <use xlink:href="#sampleCell" y="286"/>
+ <use xlink:href="#sampleCell" y="308"/>
+ <use xlink:href="#sampleCell" y="330"/>
+ <use xlink:href="#sampleCell" y="352"/>
+ </g>
+
+ <g transform="translate(-100, 0)">
+ <use xlink:href="#sampleCell"/>
+ <use xlink:href="#sampleCell" y="22"/>
+ <use xlink:href="#sampleCell" y="44"/>
+ <use xlink:href="#sampleCell" y="66"/>
+ <use xlink:href="#sampleCell" y="88"/>
+ <use xlink:href="#sampleCell" y="110"/>
+ <use xlink:href="#sampleCell" y="132"/>
+ <use xlink:href="#sampleCell" y="154"/>
+ <use xlink:href="#sampleCell" y="176"/>
+ <use xlink:href="#sampleCell" y="198"/>
+ <use xlink:href="#sampleCell" y="220"/>
+ <use xlink:href="#sampleCell" y="242"/>
+ <use xlink:href="#sampleCell" y="264"/>
+ <use xlink:href="#sampleCell" y="286"/>
+ <use xlink:href="#sampleCell" y="308"/>
+ <use xlink:href="#sampleCell" y="330"/>
+ <use xlink:href="#sampleCell" y="352"/>
+ </g>
+ </g>
+ <g id="properties" transform="translate(70, 150) rotate(-90)">
+ <text>color</text>
+ <text y="22">display</text>
+ <text y="44">fill</text>
+ <text y="66">fill-rule</text>
+ <text y="88">stroke</text>
+ <text y="110">stroke-dasharray</text>
+ <text y="132">stroke-dashoffset</text>
+ <text y="154">stroke-linecap</text>
+ <text y="176">stroke-linejoin</text>
+ <text y="198">stroke-miterlimit</text>
+ <text y="220">stroke-width</text>
+ <text y="242">visibility</text>
+ <text y="264">font-family</text>
+ <text y="286">font-size</text>
+ <text y="308">font-style</text>
+ <text y="330">font-weight</text>
+ <text y="352">text-anchor</text>
+ </g>
+
+ <g id="inheritGroup" transform="translate(56, 155)">
+
+ <g color="#0F0">
+ <rect x="3" y="10" width="16" height="32" fill="currentColor"/>
+ </g>
+
+ <g display="none" transform="translate(22, 0)">
+ <rect x="3" y="10" width="16" height="32" display="inherit"/>
+ </g>
+
+ <g fill="#0F0" transform="translate(44, 0)">
+ <rect x="3" y="10" width="16" height="32" fill="inherit"/>
+ </g>
+
+ <g fill-rule="evenodd" transform="translate(66, 0)">
+ <polygon points="10.5,0 21,21 0,7 21,7 0,21" fill-rule="inherit" fill="#0F0" transform="translate(3,
15) scale(0.7)"/>
+ </g>
+
+ <g stroke="#0F0" transform="translate(88, 0)">
+ <rect x="3" y="10" width="16" height="32" stroke="inherit" fill="none"/>
+ </g>
+
+ <g stroke-dasharray="2,2,5,5" transform="translate(110, 0)">
+ <line x1="11" y1="5" x2="11" y2="40" stroke="#0F0" stroke-dasharray="inherit" stroke-width="2"/>
+ </g>
+
+ <g stroke-dashoffset="4" transform="translate(132, 0)">
+ <line x1="11" y1="5" x2="11" y2="40" stroke="#0F0" stroke-dashoffset="inherit"
stroke-dasharray="2,2,5,5" stroke-width="2"/>
+ </g>
+
+ <g stroke-linecap="round" transform="translate(154, 0)">
+ <line x1="11" y1="10" x2="11" y2="40" stroke="#0F0" stroke-linecap="inherit" stroke-width="10"/>
+ </g>
+
+ <g stroke-linejoin="round" transform="translate(176, 0)">
+ <polyline points="3,40 11,10 19,40" stroke="#0F0" stroke-linejoin="inherit" stroke-width="5"
fill="none"/>
+ </g>
+
+ <g stroke-miterlimit="1" transform="translate(198, 0)">
+ <polyline points="3,40 11,10 19,40" stroke="#0F0" stroke-miterlimit="inherit" stroke-width="5"
fill="none"/>
+ </g>
+
+ <g stroke-width="5" transform="translate(220, 0)">
+ <line x1="11" y1="10" x2="11" y2="40" stroke="#0F0" stroke-width="inherit"/>
+ </g>
+
+ <g visibility="hidden" transform="translate(242, 0)">
+ <line x1="11" y1="10" x2="11" y2="40" stroke="#0F0" visibility="inherit"/>
+ </g>
+
+ <g font-family="serif" transform="translate(264, 0)">
+ <text x="11" y="30" font-size="20" text-anchor="middle" font-family="inherit">A</text>
+ </g>
+
+ <g font-size="10" transform="translate(286, 0)">
+ <text x="11" y="30" font-size="inherit" text-anchor="middle" font-family="serif">A</text>
+ </g>
+
+ <g font-style="italic" transform="translate(308, 0)">
+ <text x="11" y="30" font-style="inherit" text-anchor="middle" font-size="20"
font-family="serif">A</text>
+ </g>
+
+ <g font-weight="bold" transform="translate(330, 0)">
+ <text x="11" y="30" font-weight="inherit" text-anchor="middle" font-family="serif"
font-size="20">A</text>
+ </g>
+
+ <g text-anchor="middle" transform="translate(352, 0)">
+ <text x="11" y="30" text-anchor="inherit" font-family="serif" font-size="20">A</text>
+ </g>
+ </g>
+
+ <g id="referenceGroup" transform="translate(56, 205)">
+
+ <g>
+ <rect x="3" y="10" width="16" height="32" fill="#0F0"/>
+ </g>
+
+ <g transform="translate(22, 0)">
+ <rect x="3" y="10" width="16" height="32" display="none"/>
+ </g>
+
+ <g transform="translate(44, 0)">
+ <rect x="3" y="10" width="16" height="32" fill="#0F0"/>
+ </g>
+
+ <g transform="translate(66, 0)">
+ <polygon points="10.5,0 21,21 0,7 21,7 0,21" fill-rule="evenodd" fill="#0F0" transform="translate(3,
15) scale(0.7)"/>
+ </g>
+
+ <g transform="translate(88, 0)">
+ <rect x="3" y="10" width="16" height="32" stroke="#0F0" fill="none"/>
+ </g>
+
+ <g stroke-dasharray="2,2,5,5" transform="translate(110, 0)">
+ <line x1="11" y1="5" x2="11" y2="40" stroke="#0F0" stroke-dasharray="inherit" stroke-width="2"/>
+ </g>
+
+ <g transform="translate(132, 0)">
+ <line x1="11" y1="5" x2="11" y2="40" stroke="#0F0" stroke-dashoffset="4" stroke-dasharray="2,2,5,5"
stroke-width="2"/>
+ </g>
+
+ <g transform="translate(154, 0)">
+ <line x1="11" y1="10" x2="11" y2="40" stroke="#0F0" stroke-linecap="round" stroke-width="10"/>
+ </g>
+
+ <g transform="translate(176, 0)">
+ <polyline points="3,40 11,10 19,40" stroke="#0F0" stroke-linejoin="round" stroke-width="5"
fill="none"/>
+ </g>
+
+ <g transform="translate(198, 0)">
+ <polyline points="3,40 11,10 19,40" stroke="#0F0" stroke-miterlimit="1" stroke-width="5"
fill="none"/>
+ </g>
+
+ <g transform="translate(220, 0)">
+ <line x1="11" y1="10" x2="11" y2="40" stroke="#0F0" stroke-width="5"/>
+ </g>
+
+ <g transform="translate(242, 0)">
+ <line x1="11" y1="10" x2="11" y2="40" stroke="#0F0" visibility="hidden"/>
+ </g>
+
+ <g transform="translate(264, 0)">
+ <text x="11" y="30" font-size="20" text-anchor="middle" font-family="serif">A</text>
+ </g>
+
+ <g transform="translate(286, 0)">
+ <text x="11" y="30" font-size="10" text-anchor="middle" font-family="serif">A</text>
+ </g>
+
+ <g transform="translate(308, 0)">
+ <text x="11" y="30" font-style="italic" text-anchor="middle" font-size="20"
font-family="serif">A</text>
+ </g>
+
+ <g transform="translate(330, 0)">
+ <text x="11" y="30" font-weight="bold" text-anchor="middle" font-family="serif"
font-size="20">A</text>
+ </g>
+
+ <g transform="translate(352, 0)">
+ <text x="11" y="30" text-anchor="middle" font-family="serif" font-size="20">A</text>
+ </g>
+ </g>
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.5 $</text>
+ </g>
+ <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/>
+ <!-- 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>
diff --git a/tests/fixtures/reftests/svg1.1/struct-use-10-f-ref.png
b/tests/fixtures/reftests/svg1.1/struct-use-10-f-ref.png
new file mode 100644
index 00000000..2294084f
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/struct-use-10-f-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/struct-use-10-f.svg
b/tests/fixtures/reftests/svg1.1/struct-use-10-f.svg
new file mode 100644
index 00000000..ebadc034
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/struct-use-10-f.svg
@@ -0,0 +1,130 @@
+<svg version="1.1" baseProfile="full" 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">
+ <!--======================================================================-->
+ <!--= SVG 1.1 2nd Edition Test Case =-->
+ <!--======================================================================-->
+ <!--= Copyright 2009 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="DOH" author="ED" status="accepted"
+ version="$Revision: 1.6 $" testname="$RCSfile: struct-use-10-f.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/struct.html#UseElement">
+ <p>
+ Properties are inherited according to the 'use' element rules, CSS selectors only apply to the
original elements
+ and not the (conceptually) cloned DOM tree.
+ </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 the three rectangles have green fill and a thick darkgreen stroke. If any red
shows the test has failed.
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: struct-use-10-f.svg,v $</title>
+ <defs>
+ <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+ <style type="text/css">
+
+ /* low specificity */
+ defs > rect {
+ fill:red;
+ }
+
+ /* applies because of higher specificity */
+ .testclass1 {
+ fill:green;
+ }
+
+ /* does not apply because selectors don't apply to the (conceptually) cloned subtree */
+ #testid1 .testclass1 {
+ fill: red;
+ }
+
+ /* does not apply because of case sensitivity of class value */
+ g .testClass1 {
+ fill:red;
+ }
+
+ /* does not apply because of lower specificity */
+ #g1 .testclass2
+ {
+ fill: red
+ }
+
+ /* does not apply to the used rect, because there is no inheritance from the original tree into the
used subtree */
+ g#g1 {
+ visibility: hidden
+ }
+
+ /* applies because of higher specificity */
+ #testid2 {
+ stroke:darkgreen;
+ }
+
+ /* no effect for the used rect, can be referenced anyway into the used subtree */
+ g#g2 {
+ display: none;
+ }
+
+ /* applies directly to the original (referenced) rect element */
+ .testclass3 > rect {
+ fill: green;
+ stroke:darkgreen;
+ }
+
+ /* does not apply to the used rect, because there is no direct access with selectors into the used
subtree */
+ #testid3 rect {
+ stroke:red;
+ }
+ #testid3 rect#testrect3 {
+ fill:red;
+ }
+ </style>
+
+ <defs>
+ <rect id="testrect1" class="testclass1" width="100" height="100"/>
+ <g id="g1" style="fill:red">
+ <rect id="testrect2" class="testclass2" width="100" height="100" style="fill:green"/>
+ </g>
+ <g id="g2" class="class testclass3 g">
+ <rect id="testrect3" width="100" height="100" stroke="red"/>
+ </g>
+ </defs>
+
+ <text x="50%" y="3em" style="text-anchor:middle; fill:black">CSS selectors and use element</text>
+
+ <circle class="indicator" cx="240" cy="150" r="25" fill="red"/>
+ <circle class="indicator" cx="390" cy="150" r="25" fill="red"/>
+
+ <use id="testid1" xlink:href="#testrect1" x="40" y="100" style="stroke:darkgreen" stroke-width="10"/>
+ <use id="testid2" xlink:href="#testrect2" x="190" y="100" stroke="red" stroke-width="10"/>
+ <use id="testid3" xlink:href="#testrect3" x="340" y="100" style="stroke:red" stroke-width="10"/>
+
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.6 $</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>
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-01-b-ref.png
b/tests/fixtures/reftests/svg1.1/styling-css-01-b-ref.png
new file mode 100644
index 00000000..dbe200c6
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/styling-css-01-b-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-01-b.svg
b/tests/fixtures/reftests/svg1.1/styling-css-01-b.svg
new file mode 100644
index 00000000..c1e629e2
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/styling-css-01-b.svg
@@ -0,0 +1,90 @@
+<svg version="1.1" baseProfile="basic" 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">
+ <!--======================================================================-->
+ <!--= SVG 1.1 2nd Edition Test Case =-->
+ <!--======================================================================-->
+ <!--= Copyright 2009 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="SVGWG" author="Chris lilley" status="accepted"
+ version="$Revision: 1.6 $" testname="$RCSfile: styling-css-01-b.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/styling.html#StylingWithCSS">
+ <p>
+ Test element and class selectors.
+ </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 is passed if all six shapes have a green fill.
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: styling-css-01-b.svg,v $</title>
+ <defs>
+ <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+ <defs>
+ <defs>
+ <style type="text/css">
+ rect { fill: green }
+ .warning { fill: green }
+ .bar {fill: green}
+ </style>
+ </defs>
+ </defs>
+ <!-- ====================================================================== -->
+ <!-- Element (GI) selectors =============================================== -->
+ <!-- ====================================================================== -->
+
+ <text style="font-size:12px;" x="40" y="36">
+ element selectors:
+ </text>
+
+ <circle cx="160" cy="100" r="30" fill="green"/>
+ <g style="fill: red">
+ <rect x="220" y="80" width="60" height="40"/>
+ </g>
+ <polygon points="300,100, 320,120, 340,110, 360,120, 390,90, 340,70" fill="green"/>
+
+ <!-- ====================================================================== -->
+ <!-- class selectors =============================================== -->
+ <!-- ====================================================================== -->
+ <g transform="translate(0, 150)">
+
+ <text style="font-size:12px;" x="40" y="36">
+ class selectors:
+ </text>
+
+ <g style="fill: red">
+ <circle class="warning" cx="160" cy="100" r="30"/>
+ <rect x="220" y="80" width="60" height="40"/>
+ <polygon class="foo bar baz" points="300,100, 320,120, 340,110, 360,120, 390,90, 340,70"/>
+ </g>
+ </g>
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.6 $</text>
+ </g>
+ <rect id="test-frame" style="fill: none;stroke:#000" x="1" y="1" width="478" height="358" fill="none"
stroke="#000000"/>
+ <!-- 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>
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-02-b-ref.png
b/tests/fixtures/reftests/svg1.1/styling-css-02-b-ref.png
new file mode 100644
index 00000000..710cd140
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/styling-css-02-b-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-02-b.svg
b/tests/fixtures/reftests/svg1.1/styling-css-02-b.svg
new file mode 100644
index 00000000..87b5fbaa
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/styling-css-02-b.svg
@@ -0,0 +1,85 @@
+<svg version="1.1" baseProfile="basic" 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">
+ <!--======================================================================-->
+ <!--= SVG 1.1 2nd Edition Test Case =-->
+ <!--======================================================================-->
+ <!--= Copyright 2009 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="SVGWG" author="Chris lilley" status="accepted"
+ version="$Revision: 1.6 $" testname="$RCSfile: styling-css-02-b.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/styling.html#StylingWithCSS">
+ <p>
+ Test ID and attribute selectors
+ </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 is passed if all six shapes have a green fill.
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: styling-css-02-b.svg,v $</title>
+ <defs>
+ <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+ <defs>
+ <style type="text/css">
+ #one, #two { fill: green }
+ [transform="scale(2)"] { fill: green }
+ #x [points] { fill: green }
+ </style>
+ </defs>
+ <!-- ====================================================================== -->
+ <!-- ID selectors selectors ============================================== -->
+ <!-- ====================================================================== -->
+ <text style="font-size:12px;" x="40" y="36">
+ id selectors:
+ </text>
+ <g style="fill: green">
+ <circle cx="160" cy="100" r="30"/>
+ <polygon points="300,100, 320,120, 340,110, 360,120, 390,90, 340,70"/>
+ </g>
+ <g style="fill: red">
+ <rect id="one" x="220" y="80" width="60" height="40"/>
+ </g>
+ <!-- ====================================================================== -->
+ <!-- attribute selectors ================================================= -->
+ <!-- ====================================================================== -->
+ <g transform="translate(0, 150)">
+ <text style="font-size:12px;" x="40" y="36">
+ attribute selectors:
+ </text>
+
+ <g style="fill: red" id="x">
+ <circle transform="scale(2)" cx="80" cy="50" r="15"/>
+ <rect id="two" x="220" y="80" width="60" height="40"/>
+ <polygon points="300,100, 320,120, 340,110, 360,120, 390,90, 340,70"/>
+ </g>
+ </g>
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.6 $</text>
+ </g>
+ <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/>
+ <!-- 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>
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-03-b-ref.png
b/tests/fixtures/reftests/svg1.1/styling-css-03-b-ref.png
new file mode 100644
index 00000000..9b145261
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/styling-css-03-b-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-03-b.svg
b/tests/fixtures/reftests/svg1.1/styling-css-03-b.svg
new file mode 100644
index 00000000..7a830bd9
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/styling-css-03-b.svg
@@ -0,0 +1,106 @@
+<svg version="1.1" baseProfile="basic" 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">
+ <!--======================================================================-->
+ <!--= SVG 1.1 2nd Edition Test Case =-->
+ <!--======================================================================-->
+ <!--= Copyright 2009 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="SVGWG" author="Chris lilley" status="accepted"
+ version="$Revision: 1.6 $" testname="$RCSfile: styling-css-03-b.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/styling.html#StylingWithCSS">
+ <p>
+ Test ancestor, child and sibling selectors.
+ </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 is passed if all six shapes have a green fill.
+ </p>
+ </d:passCriteria>
+ <!--
+ In the upper test, the selector 'immediate child' selects all elements of class
+ 'thischild' which are immediate children of the elements of class 'mummy'. The
+ rectangle and the polygon are of class'thischild' but the polygon is not an immediate
+ child so must not be selected. The rectangle must be green, the circle and polygon
+ must be green.
+ In the lower test, the 'adjacent sibling' selector matches elements of
+ class 'secundus' which are adjacent to a previous sibling of class 'primus';
+ this makes the rectangle in the second test green. The first-child pseudoclass matches
+ circles which are the first child of elements of class 'mummy' and if correctly
+ selected this circle will be filled green. (The circle in the upper test is not
+ the first child).
+ -->
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: styling-css-03-b.svg,v $</title>
+ <defs>
+ <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+
+ <defs>
+ <style type="text/css">
+ .mummy {fill: green } /* least specific */
+ .mummy rect { fill: red} /* more specific, make rect red */
+ .mummy > .thischild { fill: green } /* even more specific, rect green */
+ .child {fill: red}
+ .gap > .thischild { fill: green}
+ .daddy {fill: red }
+ .daddy > .tertius {fill: green} /* bottom poly green */
+ .primus + .secundus { fill: green } /* bottom rect green */
+ .daddy :first-child { fill: green} /* bottom circle green */
+ </style>
+ </defs>
+
+ <text style="font-family:SVGFreeSansASCII;font-size:12px;" x="40" y="36">
+ ancestor selectors and child selectors:
+ </text>
+
+ <g class="mummy">
+ <rect class="thischild" x="220" y="80" width="60" height="40"/>
+ <circle cx="160" cy="100" r="30"/>
+ <g class="child">
+ <g class="generation gap">
+ <polygon class="thischild" points="300,100, 320,120, 340,110, 360,120, 390,90, 340,70"/>
+ </g>
+ </g>
+ </g>
+
+ <g transform="translate(0, 150)">
+ <text style="font-family:SVGFreeSansASCII;font-size:12px;" x="40" y="36">
+ ancestor, immediate-sibling and first-child selectors:
+ </text>
+
+ <g class="daddy">
+ <circle class="primus" cx="160" cy="100" r="30"/>
+ <rect class="secundus" x="220" y="80" width="60" height="40"/>
+ <polygon class="tertius" points="300,100, 320,120, 340,110, 360,120, 390,90, 340,70"/>
+ </g>
+ </g>
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.6 $</text>
+ </g>
+ <rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/>
+ <!-- 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>
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-04-f-ref.png
b/tests/fixtures/reftests/svg1.1/styling-css-04-f-ref.png
new file mode 100644
index 00000000..4ca07ecb
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/styling-css-04-f-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-04-f.svg
b/tests/fixtures/reftests/svg1.1/styling-css-04-f.svg
new file mode 100644
index 00000000..90025a2b
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/styling-css-04-f.svg
@@ -0,0 +1,157 @@
+<svg version="1.1" baseProfile="full" 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">
+ <!--======================================================================-->
+ <!--= SVG 1.1 2nd Edition Test Case =-->
+ <!--======================================================================-->
+ <!--= Copyright 2009 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="CL" author="BB" status="accepted"
+ version="$Revision: 1.8 $" testname="$RCSfile: styling-css-04-f.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/styling.html#StylingWithCSS">
+ <p>
+ This purpose of the file is to test some of the CSS2 selector syntax.
+ </p>
+ </d:testDescription>
+ <d:operatorScript xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ A UA supporting CSS selectors should render an image identical to the referenced image.
+ </p>
+
+ </d:operatorScript>
+ <d:passCriteria xmlns="http://www.w3.org/1999/xhtml">
+ <p>
+ The test is passed if a grid of 6x3 squares is shown, the colors in each column
+ are the same and are those of the reference image (blue, green, orange, gold, purple and silver)
+ </p>
+ <p>
+ For a full analysis of this test, please see
+ <a href="http://www.w3.org/Graphics/SVG/Test/styling-css-04-f/blow-by-blow.html" target="css">
+ this explanation.
+ </a>
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: styling-css-04-f.svg,v $</title>
+ <defs>
+ <font-face font-family="SVGFreeSansASCII" unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+ <g fill="white">
+ <text x="240" y="35" font-size="20" text-anchor="middle">CSS selector test</text>
+ <defs>
+ <style type="text/css">
+ * {stroke:red; stroke-width:1;} /* 0 */
+ text {stroke:none; fill:black;} /* 1 */
+ rect {stroke:black; stroke-dasharray:none;} /* 1 */
+ #test-frame {fill:none} /* 100 */
+ g#alpha {fill:blue} /* 101 */
+ a#alpha {fill:red} /* 101 */
+ #alpha * rect {fill:green} /* 101 */
+ #alpha-2 > rect {fill:orange} /* 101 */
+ #beta rect {fill:gold} /* 101 */
+ g#gamma * g * * rect {fill:silver} /* 103 */
+ g#gamma * * rect {fill:purple} /* 102 */
+ [stroke-width="1.0001"] {fill:blue} /* 10 */
+ g#delta rect[stroke-width="1.0002"] {fill:green} /* 112 */
+ g#delta > rect[stroke-width="1.0003"] {fill:orange} /* 102 */
+ #delta + g > * {fill:gold} /* 101 */
+ g#delta + g > rect + rect {fill:purple} /* 104 */
+ #delta + g#epsilon * rect:first-child {fill:silver} /* 202 */
+ #zeta [cursor] {fill:blue} /* 110 */
+ g#zeta [cursor="help"] {fill:green} /* 111 */
+ g#zeta [rx~="3E"] {fill:orange} /* 111 */
+ g#epsilon + g [stroke-dasharray|="3.1415926"] {fill:gold} /* 112 */
+ g#epsilon + g > rect.hello {fill:purple} /* 113 */
+ g#eta rect:first-child {fill:silver} /* 102 */
+ </style>
+ </defs>
+ <g id="alpha">
+ <rect x="30" y="70" width="67.5" height="67.5" id="A1"/>
+ <g id="alpha-1">
+ <rect x="100" y="70" width="67.5" height="67.5" id="B1" />
+ </g>
+ <g id="alpha-2">
+ <rect x="170" y="70" width="67.5" height="67.5" id="C1"/>
+ </g>
+ </g>
+ <g id="beta">
+ <g>
+ <g>
+ <g>
+ <g>
+ <g>
+ <rect x="240" y="70" width="67.5" height="67.5" id="D1"/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g id="gamma">
+ <g>
+ <g>
+ <rect x="310" y="70" width="67.5" height="67.5" id="E1"/>
+ <g>
+ <g>
+ <rect x="380" y="70" width="67.5" height="67.5" id="F1"/>
+ </g>
+ </g>
+ </g>
+ </g>
+ </g>
+ <g id="delta">
+ <rect x="30" y="140" width="67.5" height="67.5" stroke-width="1.0001" id="A2"/>
+ <rect x="100" y="140" width="67.5" height="67.5" stroke-width="1.0002" id="B2"/>
+ <rect x="170" y="140" width="67.5" height="67.5" stroke-width="1.0003" id="C2"/>
+ </g>
+ <g id="epsilon">
+ <rect x="240" y="140" width="67.5" height="67.5" id="D2"/>
+ <rect x="310" y="140" width="67.5" height="67.5" id="E2"/>
+ <g>
+ <rect x="380" y="140" width="67.5" height="67.5" id="F2"/>
+ </g>
+ </g>
+ <g id="zeta">
+ <rect x="30" y="210" width="67.5" height="67.5" cursor="default" id="A3"/>
+ <rect x="100" y="210" width="67.5" height="67.5" cursor="help" id="B3"/>
+ <rect x="170" y="210" width="67.5" height="67.5" stroke-dasharray="5, 3.14" id="C3"
style="fill:orange"/>
+ <rect x="240" y="210" width="67.5" height="67.5" rx="3E-6" stroke-dasharray="3.1415926,8" id="D3"
style="fill:gold"/>
+ <rect x="310" y="210" width="67.5" height="67.5" class="hello" id="E3"/>
+ </g>
+ <g id="eta">
+ <rect x="380" y="210" width="67.5" height="67.5" id="F3"/>
+ </g>
+ <g id="labels" font-size="16" font-family="Arial, Helvetica, sans-serif">
+ <text x="64" y="60" text-anchor="middle">A</text>
+ <text x="133" y="60" text-anchor="middle">B</text>
+ <text x="200" y="60" text-anchor="middle">C</text>
+ <text x="270" y="60" text-anchor="middle">D</text>
+ <text x="340" y="60" text-anchor="middle">E</text>
+ <text x="410" y="60" text-anchor="middle">F</text>
+ <text x="20" y="113" text-anchor="middle">1</text>
+ <text x="20" y="183" text-anchor="middle">2</text>
+ <text x="20" y="253" text-anchor="middle">3</text>
+ </g>
+ </g>
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none" fill="black">$Revision: 1.8 $</text>
+ </g>
+ <rect id="test-frame" x="1" y="1" width="478" height="358"/>
+ <!-- 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>
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-07-f-ref.png
b/tests/fixtures/reftests/svg1.1/styling-css-07-f-ref.png
new file mode 100644
index 00000000..7b48c0d5
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/styling-css-07-f-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-07-f.svg
b/tests/fixtures/reftests/svg1.1/styling-css-07-f.svg
new file mode 100644
index 00000000..f036f6da
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/styling-css-07-f.svg
@@ -0,0 +1,62 @@
+<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="CL" author="Microsoft" status="accepted"
+ version="$Revision: 1.3 $" testname="$RCSfile: styling-css-07-f.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/styling.html#StylingWithCSS">
+ <p>
+ Tests that inline CSS styling (style attributes) is supported.
+ </p>
+ <p>
+ Specifies an inline 'visibility: hidden' style rule on a red element and verifies there is no red on
the page.
+ </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>
+ Test passes if a green rectangle is visible, and there is no red visible on the page.
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: styling-css-07-f.svg,v $</title>
+ <defs>
+ <font-face
+ font-family="SVGFreeSansASCII"
+ unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+
+ <rect x="10" y="10" height="100" width="200" fill="green" />
+ <rect x="10" y="10" height="100" width="200" style="visibility: hidden;" fill="red" />
+
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none"
+ fill="black">$Revision: 1.3 $</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>
\ No newline at end of file
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-08-f-ref.png
b/tests/fixtures/reftests/svg1.1/styling-css-08-f-ref.png
new file mode 100644
index 00000000..a661da56
Binary files /dev/null and b/tests/fixtures/reftests/svg1.1/styling-css-08-f-ref.png differ
diff --git a/tests/fixtures/reftests/svg1.1/styling-css-08-f.svg
b/tests/fixtures/reftests/svg1.1/styling-css-08-f.svg
new file mode 100644
index 00000000..8f18acda
--- /dev/null
+++ b/tests/fixtures/reftests/svg1.1/styling-css-08-f.svg
@@ -0,0 +1,116 @@
+<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="ED" author="Microsoft" status="accepted"
+ version="$Revision: 1.3 $" testname="$RCSfile: styling-css-08-f.svg,v $">
+ <d:testDescription xmlns="http://www.w3.org/1999/xhtml"
href="http://www.w3.org/TR/SVG11/styling.html#StylingWithCSS">
+ <p>
+ Test that CSS styling via the 'style' element is supported.
+ </p>
+ <p>
+ For each of a representative sampling of selectors, specify a 'visibility: hidden' style rule and
add a corresponding red
+ element to the markup. A reference in green is shown for each shape.
+ </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 is passed if there is no red visible on the page and there are seven green shapes visible.
+ </p>
+ </d:passCriteria>
+ </d:SVGTestCase>
+ <title id="test-title">$RCSfile: styling-css-08-f.svg,v $</title>
+ <defs>
+ <font-face
+ font-family="SVGFreeSansASCII"
+ unicode-range="U+0-7F">
+ <font-face-src>
+ <font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
+ </font-face-src>
+ </font-face>
+ </defs>
+ <g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
+
+ <style type="text/css"><![CDATA[
+ path
+ {
+ visibility: hidden;
+ }
+ g svg circle
+ {
+ visibility: hidden;
+ }
+ g > ellipse
+ {
+ visibility: hidden;
+ }
+ ellipse + circle
+ {
+ visibility: hidden;
+ }
+ [id=testAttributeSelector]
+ {
+ visibility: hidden;
+ }
+ #testIdSelector
+ {
+ visibility: hidden;
+ }
+ #testPseudoClassSelector:first-child
+ {
+ visibility: hidden;
+ }
+ .reference { visibility: visible !important }
+ ]]>
+ </style>
+
+ <path class="reference" d="M 50 125 L 150 125 L 100 75 z" fill="lime" visibility="hidden"/>
+ <path id="testTypeSelector" d="M 50 125 L 150 125 L 100 75 z" fill="red" />
+ <g>
+ <svg width="200" height="200">
+ <circle class="reference" cx="50" cy="175" r="25" fill="lime" visibility="hidden"/>
+ <circle id="testDescendantSelector" cx="50" cy="175" r="25" fill="red" />
+ </svg>
+ </g>
+ <g id="testParentContainer">
+ <ellipse class="reference" cx="160" cy="200" rx="25" ry="45" fill="lime" visibility="hidden"/>
+ <circle class="reference" cx="100" cy="300" r="40" fill="lime" visibility="hidden"/>
+ <ellipse id="testChildSelector" cx="160" cy="200" rx="25" ry="45" fill="red" />
+ <circle id="testAdjacentSiblingSelector" cx="100" cy="300" r="40" fill="red" />
+ </g>
+ <circle class="reference" cx="300" cy="80" r="35" fill="lime" visibility="hidden"/>
+ <circle id="testAttributeSelector" cx="300" cy="80" r="35" fill="red" />
+
+ <circle class="reference" cx="400" cy="140" r="50" fill="lime" visibility="hidden"/>
+ <circle id="testIdSelector" cx="400" cy="140" r="50" fill="red" />
+
+ <rect class="reference" x="270" y="240" width="150" height="80" fill="lime" visibility="hidden"/>
+ <g>
+ <rect id="testPseudoClassSelector" x="270" y="240" width="150" height="80" fill="red" />
+ </g>
+
+ </g>
+ <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
+ <text id="revision" x="10" y="340" stroke="none"
+ fill="black">$Revision: 1.3 $</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>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]