summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/conformance-checkers/html-svg/types-dom-04-b-novalid.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/conformance-checkers/html-svg/types-dom-04-b-novalid.html')
-rw-r--r--testing/web-platform/tests/conformance-checkers/html-svg/types-dom-04-b-novalid.html226
1 files changed, 226 insertions, 0 deletions
diff --git a/testing/web-platform/tests/conformance-checkers/html-svg/types-dom-04-b-novalid.html b/testing/web-platform/tests/conformance-checkers/html-svg/types-dom-04-b-novalid.html
new file mode 100644
index 0000000000..123399b0ae
--- /dev/null
+++ b/testing/web-platform/tests/conformance-checkers/html-svg/types-dom-04-b-novalid.html
@@ -0,0 +1,226 @@
+<!DOCTYPE html>
+<html lang='en'>
+<head>
+ <title>types-dom-04-b-manual.svg</title>
+ <meta charset='utf-8'>
+</head>
+<body>
+ <h1>Source SVG: types-dom-04-b-manual.svg</h1>
+<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/. =-->
+ <!--======================================================================-->
+
+ <title id="test-title">$RCSfile: types-dom-04-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">
+
+ <text x='10' y='30'>Testing liveness of SVG DOM objects</text>
+
+ <g font-size='14' transform='translate(500)rotate(90)'>
+ <rect id='r1' x='40' y='60' width='20' height='20'/>
+ <text x='70' y='75'>SVGAnimatedNumberList</text>
+ <rect id='r2' x='40' y='90' width='20' height='20'/>
+ <text x='70' y='105'>SVGAnimatedLength</text>
+ <rect id='r3' x='40' y='120' width='20' height='20'/>
+ <text x='70' y='135'>SVGAnimatedLengthList</text>
+ <rect id='r4' x='40' y='150' width='20' height='20'/>
+ <text x='70' y='165'>SVGAnimatedAngle</text>
+ <rect id='r5' x='40' y='180' width='20' height='20'/>
+ <text x='70' y='195'>SVGAnimatedRect</text>
+ <rect id='r6' x='40' y='210' width='20' height='20'/>
+ <text x='70' y='225'>SVGAnimatedTransformList</text>
+ <rect id='r7' x='40' y='240' width='20' height='20'/>
+ <text x='70' y='255'>SVGAnimatedPreserveAspectRatio</text>
+ <rect id='r8' x='40' y='270' width='20' height='20'/>
+ <text x='70' y='285'>SVGAnimatedBoolean</text>
+ <rect id='r9' x='40' y='300' width='20' height='20'/>
+ <text x='70' y='315'>SVGAnimatedString</text>
+ <rect id='r10' x='40' y='330' width='20' height='20'/>
+ <text x='70' y='345'>SVGAnimatedEnumeration</text>
+ <rect id='r11' x='40' y='360' width='20' height='20'/>
+ <text x='70' y='375'>SVGAnimatedInteger</text>
+ <rect id='r12' x='40' y='390' width='20' height='20'/>
+ <text x='70' y='405'>SVGAnimatedNumber</text>
+ </g>
+
+ <g display='none'>
+ <text id='text' rotate='0 20 40' x='10 20' lengthAdjust='spacing'>abc</text>
+ <circle id='circle' r='50' transform='scale(1) scale(2)' class='one'/>
+ <marker id='marker' orient='30'/>
+ <svg id='svg' viewBox='10 20 30 40' preserveAspectRatio='none' externalResourcesRequired='false'/>
+ <filter>
+ <feTurbulence id='feTurbulence' baseFrequency='2 3' numOctaves='2'/>
+ </filter>
+ </g>
+
+ <script><![CDATA[
+ function $(id) { return document.getElementById(id); }
+
+ var text = $('text'),
+ circle = $('circle'),
+ marker = $('marker'),
+ svg = $('svg'),
+ feTurbulence = $('feTurbulence');
+
+ function expect_exception(id, fn, code) {
+ try {
+ fn();
+ } catch (e) {
+ if (e.code == code) {
+ $(id).setAttribute('fill', 'green');
+ return;
+ }
+ }
+ $(id).setAttribute('fill', 'red');
+ }
+
+ function expect_value(id, fn, value) {
+ try {
+ if (fn() === value) {
+ $(id).setAttribute('fill', 'green');
+ return;
+ }
+ } catch (e) {
+ }
+ $(id).setAttribute('fill', 'red');
+ }
+
+ // SVGAnimatedNumberList: rotate on text
+ expect_value
+ ('r1',
+ function() {
+ return text.rotate.baseVal.numberOfItems == 3
+ && (text.setAttribute('rotate', '0 20'), text.rotate.baseVal.numberOfItems == 2);
+ },
+ true);
+
+ // SVGAnimatedLength: r on circle
+ expect_value
+ ('r2',
+ function() {
+ return circle.r.baseVal.value == 50
+ && (circle.setAttribute('r', '100'), circle.r.baseVal.value == 100);
+ },
+ true);
+
+ // SVGAnimatedLengthList: x on text
+ expect_value
+ ('r3',
+ function() {
+ return text.x.baseVal.numberOfItems == 2
+ && (text.setAttribute('x', '10'), text.x.baseVal.numberOfItems == 1);
+ },
+ true);
+
+ // SVGAnimatedAngle: orient on marker
+ expect_value
+ ('r4',
+ function() {
+ return marker.orientAngle.baseVal.value == 30
+ && (marker.setAttribute('orient', '60'), marker.orientAngle.baseVal.value == 60);
+ },
+ true);
+
+ // SVGAnimatedRect: viewBox on svg
+ expect_value
+ ('r5',
+ function() {
+ return svg.viewBox.baseVal.x == 10
+ && (svg.setAttribute('viewBox', '20 30 40 50'), svg.viewBox.baseVal.x == 20);
+ },
+ true);
+
+ // SVGAnimatedTransformList: transform on circle
+ expect_value
+ ('r6',
+ function() {
+ return circle.transform.baseVal.numberOfItems == 2
+ && (circle.setAttribute('transform', 'scale(1)'), circle.transform.baseVal.numberOfItems == 1);
+ },
+ true);
+
+ // SVGAnimatedPreserveAspectRatio: preserveAspectRatio on svg
+ expect_value
+ ('r7',
+ function() {
+ return svg.preserveAspectRatio.baseVal.align == 1 /* none */
+ && (svg.setAttribute('preserveAspectRatio', 'xMidYMid'), svg.preserveAspectRatio.baseVal.align == 6);
+ },
+ true);
+
+ // SVGAnimatedBoolean: externalResourcesRequired on svg
+ expect_value
+ ('r8',
+ function() {
+ return !svg.externalResourcesRequired.baseVal
+ && (svg.setAttribute('externalResourcesRequired', 'true'), svg.externalResourcesRequired.baseVal);
+ },
+ true);
+
+ // SVGAnimatedString: class on circle
+ expect_value
+ ('r9',
+ function() {
+ return circle.className.baseVal == 'one'
+ && (circle.setAttribute('class', 'two'), circle.className.baseVal == 'two');
+ },
+ true);
+
+ // SVGAnimatedEnumeration: lengthAdjust on text
+ expect_value
+ ('r10',
+ function() {
+ return text.lengthAdjust.baseVal == 1 /* spacing*/
+ && (text.setAttribute('lengthAdjust', 'spacingAndGlyphs'), text.lengthAdjust.baseVal == 2);
+ },
+ true);
+
+ // SVGAnimatedInteger: numOctaves on feTurbulence
+ expect_value
+ ('r11',
+ function() {
+ return feTurbulence.numOctaves.baseVal == 2
+ && (feTurbulence.setAttribute('numOctaves', '1'), feTurbulence.numOctaves.baseVal == 1);
+ },
+ true);
+
+ // SVGAnimatedNumber: baseFrequency on feTurbulence
+ expect_value
+ ('r12',
+ function() {
+ return feTurbulence.baseFrequencyY.baseVal == 3
+ && (feTurbulence.setAttribute('baseFrequency', '4 5'), feTurbulence.baseFrequencyY.baseVal == 5);
+ },
+ true);
+ ]]></script>
+
+ </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>
+</body>
+</html>