summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/svg/import/types-dom-07-f-manual.svg
blob: 6abf6cabbab0f02f92623dac64ce280c098d366c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
<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="CL" author="CM" status="accepted"
    version="$Revision: 1.2 $" testname="$RCSfile: types-dom-07-f.svg,v $">
    <d:testDescription xmlns="http://www.w3.org/1999/xhtml" href="http://www.w3.org/TR/SVG11/types.html#BasicDOMInterfaces">
        <p>
          This tests that the contents of an animVal object are read only.
          This is tested for interfaces SVGAnimatedNumberList, SVGAnimatedLength,
          SVGAnimatedLengthList, SVGAnimatedAngle, SVGAnimatedRect,
          SVGAnimatedTransformList and SVGAnimatedPreserveAspectRatio.
        </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>
        Once loaded, the test shows 7 rectangles
        representing seven sub-tests reflecting the result
        of checking that an animVal object's contents is read
        only.
        Each rectangle will be either black to indicate that
        the sub-test wasn't run, red to indicate that the
        sub-test failed, and green to indicate that the
        sub-test passed.
      </p>
      <p>
        The test is passed if all 7 rectangles are green.
      </p>
    </d:passCriteria>
  </d:SVGTestCase>
  <title id="test-title">$RCSfile: types-dom-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">

    <text x='210' y='55' text-anchor='end'>animVal is read only:</text>
 
    <g font-size='14' transform='translate(500)rotate(90)'>
      <rect id='r1a' x='40' y='60' width='20' height='20'/>
      <text x='70' y='75'>SVGAnimatedNumberList</text>
      <rect id='r2a' x='40' y='90' width='20' height='20'/>
      <text x='70' y='105'>SVGAnimatedLength</text>
      <rect id='r3a' x='40' y='120' width='20' height='20'/>
      <text x='70' y='135'>SVGAnimatedLengthList</text>
      <rect id='r4a' x='40' y='150' width='20' height='20'/>
      <text x='70' y='165'>SVGAnimatedAngle</text>
      <rect id='r5a' x='40' y='180' width='20' height='20'/>
      <text x='70' y='195'>SVGAnimatedRect</text>
      <rect id='r6a' x='40' y='210' width='20' height='20'/>
      <text x='70' y='225'>SVGAnimatedTransformList</text>
      <rect id='r7a' x='40' y='240' width='20' height='20'/>
      <text x='70' y='255'>SVGAnimatedPreserveAspectRatio</text>
    </g>

    <g display='none'>
      <text id='text' rotate='0 20 40'>abc</text>
      <circle id='circle' r='50'/>
      <marker id='marker' orient='1.5708rad'/>
      <svg id='svg' viewBox='10 20 30 40'/>
    </g>

    <script><![CDATA[
      function $(id) { return document.getElementById(id); }

      var text = $('text'),
          circle = $('circle'),
          marker = $('marker'),
          svg = $('svg');

      function expect_exception(id, fn, code) {
        try {
          fn();
        } catch (e) {
          if (e.code == code) {
            $(id).setAttribute('fill', 'green');
            return;
          }
        }
        $(id).setAttribute('fill', 'red');
      }

      // SVGAnimatedNumberList: rotate on text
      expect_exception
        ('r1a',
         function() { text.rotate.animVal.clear(); },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);

      // SVGAnimatedLength: r on circle
      expect_exception
        ('r2a',
         function() { circle.r.animVal.value = 123; },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);

      // SVGAnimatedLengthList: x on text
      expect_exception
        ('r3a',
         function() { text.x.animVal.clear(); },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);

      // SVGAnimatedAngle: orient on marker
      expect_exception
        ('r4a',
         function() { marker.orientAngle.animVal.value = 123; },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);

      // SVGAnimatedRect: viewBox on svg
      expect_exception
        ('r5a',
         function() { svg.viewBox.animVal.x = 123; },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);

      // SVGAnimatedTransformList: transform on circle
      expect_exception
        ('r6a',
         function() { circle.transform.animVal.clear(); },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);

      // SVGAnimatedPreserveAspectRatio: preserveAspectRatio on svg
      expect_exception
        ('r7a',
         function() { svg.preserveAspectRatio.animVal.align = 1; },
         7 /* DOMException.NO_MODIFICATION_ALLOWED_ERR */);
    ]]></script>

  </g>
  <g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
    <text id="revision" x="10" y="340" stroke="none"
      fill="black">$Revision: 1.2 $</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>