2010-07-19 Dirk Schulze <krit@webkit.org>
authorkrit@webkit.org <krit@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 20 Jul 2010 06:54:45 +0000 (06:54 +0000)
committerkrit@webkit.org <krit@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 20 Jul 2010 06:54:45 +0000 (06:54 +0000)
        SVG CleanUp of SVGPathData parsing
        https://bugs.webkit.org/show_bug.cgi?id=41410

        Unreviewed update of Win baseline.

        * platform/win/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt: Added.
        * platform/win/svg/custom/relative-sized-inner-svg-expected.txt: Added.
        * platform/win/svg/custom/relative-sized-use-on-symbol-expected.txt: Added.
        * platform/win/svg/custom/relative-sized-use-without-attributes-on-symbol-expected.txt: Added.
        * platform/win/svg/custom/use-css-events-expected.txt: Added.
        * platform/win/svg/dom: Added.
        * platform/win/svg/dom/path-parser-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63725 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/ChangeLog
LayoutTests/platform/win/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt [new file with mode: 0644]
LayoutTests/platform/win/svg/custom/relative-sized-inner-svg-expected.txt [new file with mode: 0644]
LayoutTests/platform/win/svg/custom/relative-sized-use-on-symbol-expected.txt [new file with mode: 0644]
LayoutTests/platform/win/svg/custom/relative-sized-use-without-attributes-on-symbol-expected.txt [new file with mode: 0644]
LayoutTests/platform/win/svg/custom/use-css-events-expected.txt [new file with mode: 0644]
LayoutTests/platform/win/svg/dom/path-parser-expected.txt [new file with mode: 0644]

index d3eca9797e524c70e0175d94a00ee432e0f87479..e5cfb5da0305502e1808488708bd719299f5016b 100644 (file)
@@ -1,3 +1,18 @@
+2010-07-19  Dirk Schulze  <krit@webkit.org>
+
+        SVG CleanUp of SVGPathData parsing
+        https://bugs.webkit.org/show_bug.cgi?id=41410
+
+        Unreviewed update of Win baseline.
+
+        * platform/win/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt: Added.
+        * platform/win/svg/custom/relative-sized-inner-svg-expected.txt: Added.
+        * platform/win/svg/custom/relative-sized-use-on-symbol-expected.txt: Added.
+        * platform/win/svg/custom/relative-sized-use-without-attributes-on-symbol-expected.txt: Added.
+        * platform/win/svg/custom/use-css-events-expected.txt: Added.
+        * platform/win/svg/dom: Added.
+        * platform/win/svg/dom/path-parser-expected.txt: Added.
+
 2010-07-19  Dirk Schulze  <krit@webkit.org>
 
         SVG CleanUp of SVGPathData parsing
diff --git a/LayoutTests/platform/win/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt b/LayoutTests/platform/win/svg/W3C-SVG-1.1/paths-data-03-f-expected.txt
new file mode 100644 (file)
index 0000000..d07b668
--- /dev/null
@@ -0,0 +1,58 @@
+layer at (0,0) size 480x360
+  RenderView at (0,0) size 480x360
+layer at (0,0) size 480x360
+  RenderSVGRoot {svg} at (0,0) size 480x360
+    RenderSVGContainer {g} at (20,3) size 447x330
+      RenderSVGText {text} at (120,3) size 233x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 233x14
+          chunk 1 text run 1 at (120.00,14.00) startOffset 0 endOffset 42 width 233.00: "Elliptical arc curves drawn with commands:"
+      RenderPath {path} at (20,24) size 90x91 [stroke={[type=SOLID] [color=#FF0000] [stroke width=10.00]}] [data="M25.00,70.00 C25.27,91.99,43.25,109.64,65.25,109.50 C87.24,109.36,105.00,91.49,105.00,69.50 C105.00,47.51,87.24,29.64,65.25,29.50 C43.25,29.36,25.27,47.01,25.00,69.00 Z"]
+      RenderSVGText {text} at (48,59) size 37x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 37x14
+          chunk 1 text run 1 at (48.00,70.00) startOffset 0 endOffset 7 width 37.00: "M, A, Z"
+      RenderPath {rect} at (23,68) size 4x4 [fill={[type=SOLID] [color=#00C000]}] [data="M23.00,68.00 L27.00,68.00 L27.00,72.00 L23.00,72.00 Z"]
+      RenderPath {rect} at (23,67) size 4x4 [fill={[type=SOLID] [color=#00C000]}] [data="M23.00,67.00 L27.00,67.00 L27.00,71.00 L23.00,71.00 Z"]
+      RenderPath {path} at (149,26) size 90x88 [stroke={[type=SOLID] [color=#0000FF]}] [fill={[type=SOLID] [color=#00FF00]}] [data="M150.00,100.00 C167.55,111.97,193.06,112.78,211.74,101.96 C230.43,91.15,237.44,71.51,228.72,54.43 C220.00,37.35,197.81,27.26,175.00,30.00 Z"]
+      RenderSVGText {text} at (124,34) size 35x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 35x14
+          chunk 1 text run 1 at (124.00,45.00) startOffset 0 endOffset 7 width 35.00: "m, a, z"
+      RenderPath {rect} at (148,98) size 4x4 [fill={[type=SOLID] [color=#CF0000]}] [data="M148.00,98.00 L152.00,98.00 L152.00,102.00 L148.00,102.00 Z"]
+      RenderPath {rect} at (173,28) size 4x4 [fill={[type=SOLID] [color=#CF0000]}] [data="M173.00,28.00 L177.00,28.00 L177.00,32.00 L173.00,32.00 Z"]
+      RenderPath {path} at (332,244) size 99x89 [stroke={[type=SOLID] [color=#000000]}] [data="M350.00,245.00 C333.43,267.09,337.91,298.43,360.00,315.00 C382.09,331.57,413.43,327.09,430.00,305.00"]
+      RenderSVGText {text} at (390,289) size 23x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 23x14
+          chunk 1 text run 1 at (390.00,300.00) startOffset 0 endOffset 4 width 23.00: "M, a"
+      RenderPath {rect} at (348,243) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M348.00,243.00 L352.00,243.00 L352.00,247.00 L348.00,247.00 Z"]
+      RenderPath {rect} at (428,303) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M428.00,303.00 L432.00,303.00 L432.00,307.00 L428.00,307.00 Z"]
+      RenderPath {path} at (252,29) size 209x100 [fill={[type=SOLID] [color=#C0C000] [fill rule=EVEN-ODD]}] [data="M270.00,30.00 C252.27,50.10,253.55,80.61,272.89,99.16 C292.23,117.71,322.77,117.71,342.11,99.16 C361.45,80.61,362.73,50.10,345.00,30.00 C325.40,41.32,315.85,64.38,321.70,86.24 C327.56,108.10,347.37,123.30,370.00,123.30 C392.63,123.30,412.44,108.10,418.30,86.24 C424.15,64.38,414.60,41.32,395.00,30.00 C370.62,36.29,354.73,59.73,357.90,84.71 C361.07,109.69,382.32,128.41,407.50,128.41 C432.68,128.41,453.93,109.69,457.10,84.71 C460.27,59.73,444.38,36.29,420.00,30.00 Z"]
+      RenderSVGText {text} at (280,124) size 62x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 62x14
+          chunk 1 text run 1 at (280.00,135.00) startOffset 0 endOffset 13 width 62.00: "M, A, a, a, z"
+      RenderPath {rect} at (268,28) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M268.00,28.00 L272.00,28.00 L272.00,32.00 L268.00,32.00 Z"]
+      RenderPath {rect} at (343,28) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M343.00,28.00 L347.00,28.00 L347.00,32.00 L343.00,32.00 Z"]
+      RenderPath {rect} at (393,28) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M393.00,28.00 L397.00,28.00 L397.00,32.00 L393.00,32.00 Z"]
+      RenderPath {rect} at (418,28) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M418.00,28.00 L422.00,28.00 L422.00,32.00 L418.00,32.00 Z"]
+      RenderPath {path} at (27,127) size 154x130 [stroke={[type=SOLID] [color=#000000] [stroke width=3.00]}] [fill={[type=SOLID] [color=#CF0000]}] [data="M30.00,150.00 C43.81,132.07,69.54,128.72,87.49,142.52 C105.43,156.32,108.79,182.05,95.00,200.00 Z M60.00,180.00 C46.21,197.95,49.57,223.68,67.51,237.48 C85.46,251.29,111.19,247.94,125.00,230.00 Z M100.00,204.00 C113.81,186.06,139.55,182.70,157.49,196.51 C175.44,210.31,178.80,236.05,165.00,254.00 Z"]
+      RenderSVGText {text} at (25,259) size 120x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 120x14
+          chunk 1 text run 1 at (25.00,270.00) startOffset 0 endOffset 25 width 120.00: "M, a, Z, m, A, Z, m, a, z"
+      RenderPath {rect} at (28,148) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M28.00,148.00 L32.00,148.00 L32.00,152.00 L28.00,152.00 Z"]
+      RenderPath {rect} at (93,198) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M93.00,198.00 L97.00,198.00 L97.00,202.00 L93.00,202.00 Z"]
+      RenderPath {rect} at (58,178) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M58.00,178.00 L62.00,178.00 L62.00,182.00 L58.00,182.00 Z"]
+      RenderPath {rect} at (123,228) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M123.00,228.00 L127.00,228.00 L127.00,232.00 L123.00,232.00 Z"]
+      RenderPath {rect} at (98,202) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M98.00,202.00 L102.00,202.00 L102.00,206.00 L98.00,206.00 Z"]
+      RenderPath {rect} at (163,252) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M163.00,252.00 L167.00,252.00 L167.00,256.00 L163.00,256.00 Z"]
+      RenderPath {path} at (214,141) size 252x106 [stroke={[type=SOLID] [color=#FF0000]}] [data="M215.00,190.00 C220.26,245.75,240.89,245.75,265.00,190.00 C296.65,141.82,316.85,141.82,315.00,190.00 C309.67,227.54,329.26,227.54,365.00,190.00 C400.96,163.95,419.86,163.95,415.00,190.00 C413.86,205.73,432.08,205.73,465.00,190.00"]
+      RenderSVGText {text} at (215,235) size 66x14 contains 1 chunk(s)
+        RenderSVGInlineText {#text} at (0,0) size 66x14
+          chunk 1 text run 1 at (215.00,246.00) startOffset 0 endOffset 13 width 66.00: "M, A, A, A, A"
+      RenderPath {rect} at (213,188) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M213.00,188.00 L217.00,188.00 L217.00,192.00 L213.00,192.00 Z"]
+      RenderPath {rect} at (263,188) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M263.00,188.00 L267.00,188.00 L267.00,192.00 L263.00,192.00 Z"]
+      RenderPath {rect} at (313,188) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M313.00,188.00 L317.00,188.00 L317.00,192.00 L313.00,192.00 Z"]
+      RenderPath {rect} at (363,188) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M363.00,188.00 L367.00,188.00 L367.00,192.00 L363.00,192.00 Z"]
+      RenderPath {rect} at (413,188) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M413.00,188.00 L417.00,188.00 L417.00,192.00 L413.00,192.00 Z"]
+      RenderPath {rect} at (463,188) size 4x4 [fill={[type=SOLID] [color=#0000FF]}] [data="M463.00,188.00 L467.00,188.00 L467.00,192.00 L463.00,192.00 Z"]
+    RenderSVGText {text} at (10,304) size 264x46 contains 1 chunk(s)
+      RenderSVGInlineText {#text} at (0,0) size 264x46
+        chunk 1 text run 1 at (10.00,340.00) startOffset 0 endOffset 16 width 264.00: "$Revision: 1.7 $"
+    RenderPath {rect} at (0,0) size 480x360 [stroke={[type=SOLID] [color=#000000]}] [data="M1.00,1.00 L479.00,1.00 L479.00,359.00 L1.00,359.00 Z"]
diff --git a/LayoutTests/platform/win/svg/custom/relative-sized-inner-svg-expected.txt b/LayoutTests/platform/win/svg/custom/relative-sized-inner-svg-expected.txt
new file mode 100644 (file)
index 0000000..966be43
--- /dev/null
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {html} at (0,0) size 800x460
+    RenderBody {body} at (8,16) size 784x436
+      RenderBlock {p} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 676x18
+          text run at (0,0) width 676: "The svg area contained in the div element (red box), should fill out the whole area with a green shaped path"
+      RenderBlock {div} at (0,34) size 402x402 [border: (1px solid #FF0000)]
+        RenderSVGRoot {svg} at (27,67) size 364x364
+          RenderSVGViewportContainer {svg} at (27,67) size 364x366
+            RenderPath {path} at (27,67) size 364x366 [fill={[type=SOLID] [color=#008000]}] [data="M143.00,103.00 L143.00,117.00 C143.00,130.91,112.56,142.19,75.00,142.19 C37.44,142.19,7.00,130.91,7.00,117.00 L7.00,117.00 L7.00,103.00 C7.00,89.09,37.44,77.81,75.00,77.81 C112.56,77.81,143.00,89.09,143.00,103.00 L52.00,72.00 C34.31,70.66,20.85,55.57,21.52,37.84 C22.20,20.12,36.76,6.09,54.50,6.09 C72.24,6.09,86.80,20.12,87.48,37.84 C88.15,55.57,74.69,70.66,57.00,72.00"]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/win/svg/custom/relative-sized-use-on-symbol-expected.txt b/LayoutTests/platform/win/svg/custom/relative-sized-use-on-symbol-expected.txt
new file mode 100644 (file)
index 0000000..94610f7
--- /dev/null
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {html} at (0,0) size 800x460
+    RenderBody {body} at (8,16) size 784x436
+      RenderBlock {p} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 676x18
+          text run at (0,0) width 676: "The svg area contained in the div element (red box), should fill out the whole area with a green shaped path"
+      RenderBlock {div} at (0,34) size 402x402 [border: (1px solid #FF0000)]
+        RenderSVGRoot {svg} at (45,85) size 328x328
+          RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+          RenderSVGContainer {use} at (45,85) size 328x328
+            RenderSVGContainer {g} at (45,85) size 328x328 [transform={m=((1.00,0.00)(0.00,1.00)) t=(20.00,20.00)}]
+              RenderSVGViewportContainer {svg} at (45,85) size 328x330
+                RenderPath {path} at (45,85) size 328x330 [fill={[type=SOLID] [color=#008000]}] [data="M143.00,103.00 L143.00,117.00 C143.00,130.91,112.56,142.19,75.00,142.19 C37.44,142.19,7.00,130.91,7.00,117.00 L7.00,117.00 L7.00,103.00 C7.00,89.09,37.44,77.81,75.00,77.81 C112.56,77.81,143.00,89.09,143.00,103.00 L52.00,72.00 C34.31,70.66,20.85,55.57,21.52,37.84 C22.20,20.12,36.76,6.09,54.50,6.09 C72.24,6.09,86.80,20.12,87.48,37.84 C88.15,55.57,74.69,70.66,57.00,72.00"]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/win/svg/custom/relative-sized-use-without-attributes-on-symbol-expected.txt b/LayoutTests/platform/win/svg/custom/relative-sized-use-without-attributes-on-symbol-expected.txt
new file mode 100644 (file)
index 0000000..63fe668
--- /dev/null
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x460
+  RenderBlock {html} at (0,0) size 800x460
+    RenderBody {body} at (8,16) size 784x436
+      RenderBlock {p} at (0,0) size 784x18
+        RenderText {#text} at (0,0) size 676x18
+          text run at (0,0) width 676: "The svg area contained in the div element (red box), should fill out the whole area with a green shaped path"
+      RenderBlock {div} at (0,34) size 402x402 [border: (1px solid #FF0000)]
+        RenderSVGRoot {svg} at (27,67) size 364x364
+          RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+          RenderSVGContainer {use} at (27,67) size 364x364
+            RenderSVGContainer {g} at (27,67) size 364x364
+              RenderSVGViewportContainer {svg} at (27,67) size 364x366
+                RenderPath {path} at (27,67) size 364x366 [fill={[type=SOLID] [color=#008000]}] [data="M143.00,103.00 L143.00,117.00 C143.00,130.91,112.56,142.19,75.00,142.19 C37.44,142.19,7.00,130.91,7.00,117.00 L7.00,117.00 L7.00,103.00 C7.00,89.09,37.44,77.81,75.00,77.81 C112.56,77.81,143.00,89.09,143.00,103.00 L52.00,72.00 C34.31,70.66,20.85,55.57,21.52,37.84 C22.20,20.12,36.76,6.09,54.50,6.09 C72.24,6.09,86.80,20.12,87.48,37.84 C88.15,55.57,74.69,70.66,57.00,72.00"]
+        RenderText {#text} at (0,0) size 0x0
diff --git a/LayoutTests/platform/win/svg/custom/use-css-events-expected.txt b/LayoutTests/platform/win/svg/custom/use-css-events-expected.txt
new file mode 100644 (file)
index 0000000..7041192
--- /dev/null
@@ -0,0 +1,30 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderSVGRoot {svg} at (0,0) size 800x600
+    RenderSVGHiddenContainer {defs} at (0,0) size 0x0
+    RenderPath {rect} at (0,0) size 800x600 [fill={[type=SOLID] [color=#CCCCAA]}] [data="M0.00,0.00 L800.00,0.00 L800.00,600.00 L0.00,600.00 Z"]
+    RenderSVGContainer {a} at (7,94) size 239x218
+      RenderSVGContainer {use} at (7,166) size 146x146
+        RenderSVGContainer {g} at (7,166) size 146x146 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
+          RenderSVGViewportContainer {svg} at (7,166) size 146x147
+            RenderPath {path} at (7,166) size 146x147 [fill={[type=SOLID] [color=#FFFFFF]}] [data="M143.00,103.00 L143.00,117.00 C143.00,130.91,112.56,142.19,75.00,142.19 C37.44,142.19,7.00,130.91,7.00,117.00 L7.00,117.00 L7.00,103.00 C7.00,89.09,37.44,77.81,75.00,77.81 C112.56,77.81,143.00,89.09,143.00,103.00 L52.00,72.00 C34.31,70.66,20.85,55.57,21.52,37.84 C22.20,20.12,36.76,6.09,54.50,6.09 C72.24,6.09,86.80,20.12,87.48,37.84 C88.15,55.57,74.69,70.66,57.00,72.00"]
+      RenderSVGContainer {use} at (9,170) size 142x140
+        RenderSVGContainer {g} at (9,170) size 142x140 [transform={m=((1.00,0.00)(0.00,1.00)) t=(0.00,150.00)}]
+          RenderSVGViewportContainer {svg} at (9,170) size 142x140
+            RenderPath {ellipse} at (10,256) size 140x54 [fill={[type=SOLID] [color=#666666]}] [data="M140.00,115.00 L139.87,116.57 L139.49,118.13 L138.85,119.68 L137.96,121.22 L136.82,122.73 L135.44,124.20 L133.81,125.64 L131.96,127.04 L129.88,128.40 L127.59,129.69 L125.08,130.94 L122.38,132.11 L119.50,133.22 L116.43,134.26 L113.21,135.23 L109.83,136.11 L106.31,136.91 L102.68,137.62 L98.93,138.24 L95.09,138.78 L91.16,139.21 L87.18,139.56 L83.15,139.80 L79.08,139.95 L75.00,140.00 L70.92,139.95 L66.85,139.80 L62.82,139.56 L58.84,139.21 L54.91,138.78 L51.07,138.24 L47.32,137.62 L43.69,136.91 L40.17,136.11 L36.79,135.23 L33.57,134.26 L30.50,133.22 L27.62,132.11 L24.92,130.94 L22.41,129.69 L20.12,128.40 L18.04,127.04 L16.19,125.64 L14.56,124.20 L13.18,122.73 L12.04,121.22 L11.15,119.68 L10.51,118.13 L10.13,116.57 L10.00,115.00 L10.13,113.43 L10.51,111.87 L11.15,110.32 L12.04,108.78 L13.18,107.27 L14.56,105.80 L16.19,104.36 L18.04,102.96 L20.12,101.60 L22.41,100.31 L24.92,99.06 L27.62,97.89 L30.50,96.78 L33.57,95.74 L36.79,94.77 L40.17,93.89 L43.69,93.09 L47.32,92.38 L51.07,91.76 L54.91,91.22 L58.84,90.79 L62.82,90.44 L66.85,90.20 L70.92,90.05 L75.00,90.00 L79.08,90.05 L83.15,90.20 L87.18,90.44 L91.16,90.79 L95.09,91.22 L98.93,91.76 L102.68,92.38 L106.31,93.09 L109.83,93.89 L113.21,94.77 L116.43,95.74 L119.50,96.78 L122.38,97.89 L125.08,99.06 L127.59,100.31 L129.88,101.60 L131.96,102.96 L133.81,104.36 L135.44,105.80 L136.82,107.27 L137.96,108.78 L138.85,110.32 L139.49,111.87 L139.87,113.43 Z"]
+            RenderPath {line} at (9,272) size 7x11 [stroke={[type=SOLID] [color=#666666] [stroke width=6.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M12.00,115.00 L12.00,105.00"]
+            RenderPath {line} at (144,272) size 7x11 [stroke={[type=SOLID] [color=#666666] [stroke width=6.00]}] [fill={[type=SOLID] [color=#000000]}] [data="M138.00,115.00 L138.00,105.00"]
+            RenderPath {ellipse} at (10,245) size 140x54 [fill={[type=SOLID] [color=#999999]}] [data="M140.00,105.00 L139.87,106.57 L139.49,108.13 L138.85,109.68 L137.96,111.22 L136.82,112.73 L135.44,114.20 L133.81,115.64 L131.96,117.04 L129.88,118.40 L127.59,119.69 L125.08,120.94 L122.38,122.11 L119.50,123.22 L116.43,124.26 L113.21,125.23 L109.83,126.11 L106.31,126.91 L102.68,127.62 L98.93,128.24 L95.09,128.78 L91.16,129.21 L87.18,129.56 L83.15,129.80 L79.08,129.95 L75.00,130.00 L70.92,129.95 L66.85,129.80 L62.82,129.56 L58.84,129.21 L54.91,128.78 L51.07,128.24 L47.32,127.62 L43.69,126.91 L40.17,126.11 L36.79,125.23 L33.57,124.26 L30.50,123.22 L27.62,122.11 L24.92,120.94 L22.41,119.69 L20.12,118.40 L18.04,117.04 L16.19,115.64 L14.56,114.20 L13.18,112.73 L12.04,111.22 L11.15,109.68 L10.51,108.13 L10.13,106.57 L10.00,105.00 L10.13,103.43 L10.51,101.87 L11.15,100.32 L12.04,98.78 L13.18,97.27 L14.56,95.80 L16.19,94.36 L18.04,92.96 L20.12,91.60 L22.41,90.31 L24.92,89.06 L27.62,87.89 L30.50,86.78 L33.57,85.74 L36.79,84.77 L40.17,83.89 L43.69,83.09 L47.32,82.38 L51.07,81.76 L54.91,81.22 L58.84,80.79 L62.82,80.44 L66.85,80.20 L70.92,80.05 L75.00,80.00 L79.08,80.05 L83.15,80.20 L87.18,80.44 L91.16,80.79 L95.09,81.22 L98.93,81.76 L102.68,82.38 L106.31,83.09 L109.83,83.89 L113.21,84.77 L116.43,85.74 L119.50,86.78 L122.38,87.89 L125.08,89.06 L127.59,90.31 L129.88,91.60 L131.96,92.96 L133.81,94.36 L135.44,95.80 L136.82,97.27 L137.96,98.78 L138.85,100.32 L139.49,101.87 L139.87,103.43 Z"]
+            RenderPath {path} at (48,197) size 38x84 [fill={[type=SOLID] [color=#666666]}] [data="M70.00,110.00 C73.33,112.67,76.67,112.67,80.00,110.00 C70.00,60.00,58.33,35.00,45.00,35.00 Z"]
+            RenderPath {circle} at (26,170) size 65x65 [fill={[type=SOLID] [color=#333333]}] [data="M85.00,40.00 L84.94,41.88 L84.76,43.76 L84.47,45.62 L84.06,47.46 L83.53,49.27 L82.89,51.04 L82.14,52.77 L81.29,54.45 L80.33,56.07 L79.27,57.63 L78.12,59.12 L76.87,60.54 L75.54,61.87 L74.12,63.12 L72.63,64.27 L71.07,65.33 L69.45,66.29 L67.77,67.14 L66.04,67.89 L64.27,68.53 L62.46,69.06 L60.62,69.47 L58.76,69.76 L56.88,69.94 L55.00,70.00 L53.12,69.94 L51.24,69.76 L49.38,69.47 L47.54,69.06 L45.73,68.53 L43.96,67.89 L42.23,67.14 L40.55,66.29 L38.93,65.33 L37.37,64.27 L35.88,63.12 L34.46,61.87 L33.13,60.54 L31.88,59.12 L30.73,57.63 L29.67,56.07 L28.71,54.45 L27.86,52.77 L27.11,51.04 L26.47,49.27 L25.94,47.46 L25.53,45.62 L25.24,43.76 L25.06,41.88 L25.00,40.00 L25.06,38.12 L25.24,36.24 L25.53,34.38 L25.94,32.54 L26.47,30.73 L27.11,28.96 L27.86,27.23 L28.71,25.55 L29.67,23.93 L30.73,22.37 L31.88,20.88 L33.13,19.46 L34.46,18.13 L35.88,16.88 L37.37,15.73 L38.93,14.67 L40.55,13.71 L42.23,12.86 L43.96,12.11 L45.73,11.47 L47.54,10.94 L49.38,10.53 L51.24,10.24 L53.12,10.06 L55.00,10.00 L56.88,10.06 L58.76,10.24 L60.62,10.53 L62.46,10.94 L64.27,11.47 L66.04,12.11 L67.77,12.86 L69.45,13.71 L71.07,14.67 L72.63,15.73 L74.12,16.88 L75.54,18.13 L76.87,19.46 L78.12,20.88 L79.27,22.37 L80.33,23.93 L81.29,25.55 L82.14,27.23 L82.89,28.96 L83.53,30.73 L84.06,32.54 L84.47,34.38 L84.76,36.24 L84.94,38.12 Z"]
+      RenderSVGContainer {use} at (74,94) size 172x172
+        RenderSVGContainer {g} at (74,94) size 172x172 [transform={m=((1.00,0.00)(0.00,1.00)) t=(80.00,90.00)}]
+          RenderSVGViewportContainer {svg} at (74,94) size 172x172
+            RenderPath {path} at (84,129) size 72x102 [stroke={[type=SOLID] [color=#FFFFFF]}] [fill={[type=SOLID] [color=#FFFFFF]}] [data="M5.00,55.00 L45.00,55.00 L70.00,30.00 L70.00,120.00 L45.00,95.00 L5.00,95.00 Z"]
+            RenderSVGContainer {g} at (161,111) size 84x138
+              RenderPath {path} at (161,159) size 20x42 [stroke={[type=SOLID] [color=#FFFFFF] [stroke width=7.00] [line cap=ROUND]}] [data="M80.00,60.00 C90.00,70.00,90.00,80.00,80.00,90.00"]
+              RenderPath {path} at (177,143) size 25x74 [stroke={[type=SOLID] [color=#FFFFFF] [stroke width=7.00] [line cap=ROUND]}] [data="M95.00,45.00 C110.00,60.00,110.00,90.00,95.00,105.00"]
+              RenderPath {path} at (193,127) size 30x106 [stroke={[type=SOLID] [color=#FFFFFF] [stroke width=7.00] [line cap=ROUND]}] [data="M110.00,30.00 C130.00,50.00,130.00,100.00,110.00,120.00"]
+              RenderPath {path} at (209,111) size 36x138 [stroke={[type=SOLID] [color=#FFFFFF] [stroke width=7.00] [line cap=ROUND]}] [data="M125.00,15.00 C150.00,40.00,150.00,110.00,125.00,135.00"]
+            RenderPath {circle} at (74,94) size 172x172 [fill={[type=SOLID] [color=#FFFFFF] [opacity=0.04]}] [data="M155.00,75.00 L154.84,80.02 L154.37,85.03 L153.58,89.99 L152.49,94.90 L151.08,99.72 L149.38,104.45 L147.39,109.06 L145.10,113.54 L142.55,117.87 L139.72,122.02 L136.64,125.99 L133.32,129.76 L129.76,133.32 L125.99,136.64 L122.02,139.72 L117.87,142.55 L113.54,145.10 L109.06,147.39 L104.45,149.38 L99.72,151.08 L94.90,152.49 L89.99,153.58 L85.03,154.37 L80.02,154.84 L75.00,155.00 L69.98,154.84 L64.97,154.37 L60.01,153.58 L55.10,152.49 L50.28,151.08 L45.55,149.38 L40.94,147.39 L36.46,145.10 L32.13,142.55 L27.98,139.72 L24.01,136.64 L20.24,133.32 L16.68,129.76 L13.36,125.99 L10.28,122.02 L7.45,117.87 L4.90,113.54 L2.61,109.06 L0.62,104.45 L-1.08,99.72 L-2.49,94.90 L-3.58,89.99 L-4.37,85.03 L-4.84,80.02 L-5.00,75.00 L-4.84,69.98 L-4.37,64.97 L-3.58,60.01 L-2.49,55.10 L-1.08,50.28 L0.62,45.55 L2.61,40.94 L4.90,36.46 L7.45,32.13 L10.28,27.98 L13.36,24.01 L16.68,20.24 L20.24,16.68 L24.01,13.36 L27.98,10.28 L32.13,7.45 L36.46,4.90 L40.94,2.61 L45.55,0.62 L50.28,-1.08 L55.10,-2.49 L60.01,-3.58 L64.97,-4.37 L69.98,-4.84 L75.00,-5.00 L80.02,-4.84 L85.03,-4.37 L89.99,-3.58 L94.90,-2.49 L99.72,-1.08 L104.45,0.62 L109.06,2.61 L113.54,4.90 L117.87,7.45 L122.02,10.28 L125.99,13.36 L129.76,16.68 L133.32,20.24 L136.64,24.01 L139.72,27.98 L142.55,32.13 L145.10,36.46 L147.39,40.94 L149.38,45.55 L151.08,50.28 L152.49,55.10 L153.58,60.01 L154.37,64.97 L154.84,69.98 Z"]
diff --git a/LayoutTests/platform/win/svg/dom/path-parser-expected.txt b/LayoutTests/platform/win/svg/dom/path-parser-expected.txt
new file mode 100644 (file)
index 0000000..a833c84
--- /dev/null
@@ -0,0 +1,75 @@
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="M100,200 a3,4,5,2,1,6,7"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="M100,200 a3,4,5,1,2,6,7"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="\vM1,2"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="xM1,2"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="M1,2\v"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="M1,2x"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="M1,2 L40,0#90"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d=""
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="x"
+CONSOLE MESSAGE: line 9: Error: Problem parsing d="L1,2"
+This tests the SVG path parser by parsing and then re-serializing various paths.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS parsePath('M1,2') is 'M1,2'
+PASS parsePath('m1,2') is 'M1,2'
+PASS parsePath('M100,200 m3,4') is 'M100,200 M103,204'
+PASS parsePath('M100,200 L3,4') is 'M100,200 L3,4'
+PASS parsePath('M100,200 l3,4') is 'M100,200 L103,204'
+PASS parsePath('M100,200 H3') is 'M100,200 L3,200'
+PASS parsePath('M100,200 h3') is 'M100,200 L103,200'
+PASS parsePath('M100,200 V3') is 'M100,200 L100,3'
+PASS parsePath('M100,200 v3') is 'M100,200 L100,203'
+PASS parsePath('M100,200 Z') is 'M100,200 Z'
+PASS parsePath('M100,200 z') is 'M100,200 Z'
+PASS parsePath('M100,200 C3,4,5,6,7,8') is 'M100,200 C3,4,5,6,7,8'
+PASS parsePath('M100,200 c3,4,5,6,7,8') is 'M100,200 C103,204,105,206,107,208'
+PASS parsePath('M100,200 S3,4,5,6') is 'M100,200 C100,200,3,4,5,6'
+PASS parsePath('M100,200 s3,4,5,6') is 'M100,200 C100,200,103,204,105,206'
+PASS parsePath('M100,200 Q3,4,5,6') is 'M100,200 C35.3,69.3,3.7,4.7,5,6'
+PASS parsePath('M100,200 q3,4,5,6') is 'M100,200 C102,202.7,103.7,204.7,105,206'
+PASS parsePath('M100,200 T3,4') is 'M100,200 C100,200,67.7,134.7,3,4'
+PASS parsePath('M100,200 t3,4') is 'M100,200 C100,200,101,201.3,103,204'
+FAIL parsePath('M100,200 A3,4,5,0,0,6,7') should be M100,200 C141.5,162.8,154.1,89.5,128.2,36.2 C102.2,-17.1,47.5,-30.2,6,7. Was M100,200 C141.5,162.8,154.1,89.4,128.2,36.2 C102.2,-17.1,47.5,-30.2,6,7.
+FAIL parsePath('M100,200 A3,4,5,1,0,6,7') should be M100,200 C141.5,162.8,154.2,89.4,128.2,36.1 C102.2,-17.2,47.5,-30.2,6,7. Was M100,200 C141.5,162.8,154.1,89.4,128.2,36.2 C102.2,-17.1,47.5,-30.2,6,7.
+FAIL parsePath('M100,200 A3,4,5,0,1,6,7') should be M100,200 C58.5,237.2,3.8,224.1,-22.2,170.8 C-48.1,117.5,-35.5,44.2,6,7. Was M100,200 C58.5,237.2,3.8,224.1,-22.2,170.8 C-48.1,117.6,-35.5,44.2,6,7.
+FAIL parsePath('M100,200 A3,4,5,1,1,6,7') should be M100,200 C58.5,237.2,3.8,224.2,-22.2,170.9 C-48.2,117.6,-35.5,44.2,6,7. Was M100,200 C58.5,237.2,3.8,224.1,-22.2,170.8 C-48.1,117.6,-35.5,44.2,6,7.
+PASS parsePath('M100,200 a3,4,5,0,0,6,7') is 'M100,200 C98.5,202.3,98.6,205.7,100.2,207.7 C101.9,209.6,104.5,209.3,106,207'
+PASS parsePath('M100,200 a3,4,5,0,1,6,7') is 'M100,200 C101.5,197.7,104.1,197.4,105.8,199.3 C107.4,201.3,107.5,204.7,106,207'
+PASS parsePath('M100,200 a3,4,5,1,0,6,7') is 'M100,200 C98.5,202.3,98.6,205.7,100.2,207.7 C101.9,209.6,104.5,209.3,106,207'
+PASS parsePath('M100,200 a3,4,5,1,1,6,7') is 'M100,200 C101.5,197.7,104.1,197.4,105.8,199.3 C107.4,201.3,107.5,204.7,106,207'
+PASS parsePath('M100,200 a3,4,5,006,7') is 'M100,200 C98.5,202.3,98.6,205.7,100.2,207.7 C101.9,209.6,104.5,209.3,106,207'
+PASS parsePath('M100,200 a3,4,5,016,7') is 'M100,200 C101.5,197.7,104.1,197.4,105.8,199.3 C107.4,201.3,107.5,204.7,106,207'
+PASS parsePath('M100,200 a3,4,5,106,7') is 'M100,200 C98.5,202.3,98.6,205.7,100.2,207.7 C101.9,209.6,104.5,209.3,106,207'
+PASS parsePath('M100,200 a3,4,5,116,7') is 'M100,200 C101.5,197.7,104.1,197.4,105.8,199.3 C107.4,201.3,107.5,204.7,106,207'
+PASS parsePath('M100,200 a3,4,5,2,1,6,7') is 'M100,200'
+PASS parsePath('M100,200 a3,4,5,1,2,6,7') is 'M100,200'
+PASS parsePath('M100,200 a0,4,5,0,0,10,0 a4,0,5,0,0,0,10 a0,0,5,0,0,-10,0 z') is 'M100,200 L110,200 L110,210 L100,210 Z'
+PASS parsePath('M1,2,3,4') is 'M1,2 L3,4'
+PASS parsePath('m100,200,3,4') is 'M100,200 L103,204'
+PASS parsePath('M 100-200') is 'M100,-200'
+PASS parsePath('M 0.6.5') is 'M0.6,0.5'
+PASS parsePath(' M1,2') is 'M1,2'
+PASS parsePath('  M1,2') is 'M1,2'
+PASS parsePath('\tM1,2') is 'M1,2'
+PASS parsePath('\nM1,2') is 'M1,2'
+PASS parsePath('\rM1,2') is 'M1,2'
+PASS parsePath('\vM1,2') is ''
+PASS parsePath('xM1,2') is ''
+PASS parsePath('M1,2 ') is 'M1,2'
+PASS parsePath('M1,2\t') is 'M1,2'
+PASS parsePath('M1,2\n') is 'M1,2'
+PASS parsePath('M1,2\r') is 'M1,2'
+PASS parsePath('M1,2\v') is 'M1,2'
+PASS parsePath('M1,2x') is 'M1,2'
+PASS parsePath('M1,2 L40,0#90') is 'M1,2 L40,0'
+PASS parsePath('') is ''
+PASS parsePath('x') is ''
+PASS parsePath('L1,2') is ''
+PASS parsePath('M.1 .2 L.3 .4 .5 .6') is 'M0.1,0.2 L0.3,0.4 L0.5,0.6'
+PASS successfullyParsed is true
+
+TEST COMPLETE
+