Closed Bug 1508060 Opened 6 years ago Closed 6 years ago

[wpt-sync] Sync PR 14114 - SVG Painting: property parsing

Categories

(Core :: SVG, enhancement, P4)

enhancement

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 14114 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/14114
Details from upstream follow.

Eric Willigers <ericwilligers@chromium.org> wrote:
>  SVG Painting: property parsing
>  
>  Test that properties support the full grammar.
>  https://svgwg.org/svg2-draft/painting.html
>  
>  The tests highlight a number of spec and implementation issues:-
>  
>  Spec issues:
>  
>  Blink/Edge/Firefox/Safari do not accept percentage fill-opacity/stroke-opacity
>  https://github.com/w3c/svgwg/issues/403#issuecomment-439600770
>  
>  Browsers do not accept stroke-linejoin 'miter-clip' or 'arcs'
>  https://github.com/w3c/svgwg/issues/592
>  
>  Browsers accept numeric stroke-dashoffset and stroke-width
>  https://github.com/w3c/svgwg/issues/534
>  
>  Browser bugs:
>  
>  Blink image-rendering does not accept 'optimizespeed' or 'optimizequality'
>  https://bugs.chromium.org/p/chromium/issues/detail?id=901669
>  
>  Firefox rejects stroke-miterlimit less than 1
>  https://bugzilla.mozilla.org/show_bug.cgi?id=1508028
>  
>  Edge serializes fill/stroke url() without quoting the url string.
>  https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/16900961/
>  
>  Edge accepts misformed numbers fill-opacity: 1.; stroke-miterlimit: 1.; stroke-opacity: 1.;
>  https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/19656838/
>  
>  Edge accepts negative stroke-dasharray
>  Edge does not accept calc in stroke-dasharray
>  https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/19656979/
>  
>  Edge accepts negative stroke-width values
>  https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/19656907/
>  
>  Safari accepts negative stroke-width
>  https://bugs.webkit.org/show_bug.cgi?id=191804
>  
>  Safari serializes color-interpolation, color-rendering, image-rendering, shape-rendering, text-rendering in mixed case
>  https://bugs.webkit.org/show_bug.cgi?id=190685
>  
>  Edge serializes paint-order 'normal' as 'fill', unlike other browsers.
>  
>  Firefox does not use shortest paint-order serialization, instead it uses 2 keywords when 1 would suffice
>  
>  Browsers yet to implement properties:
>  
>  Firefox does not support color-rendering
>  
>  Edge does not support color-interpolation/color-rendering/image-rendering/shape-rendering/text-rendering
>  Note: When implementing, the keywords should serialize in lower case.
>  https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/19328562/
>  
>  Browsers yet to implement keywords:
>  
>  Blink/Edge/Safari do not accept fill/stroke 'context-fill' or 'context-stroke'
>  Firefox does support the keywords: https://jsfiddle.net/ericwilligers/8bhyafe1/
Component: web-platform-tests → SVG
Product: Testing → Core
Ran 38 tests and 140 subtests
OK     : 38
PASS   : 124
FAIL   : 16

New tests that have failures or other problems:
/svg/painting/parsing/color-rendering-valid.svg
    e.style['color-rendering'] = "auto" should set the property value: FAIL
    e.style['color-rendering'] = "optimizequality" should set the property value: FAIL
    e.style['color-rendering'] = "optimizespeed" should set the property value: FAIL
/svg/painting/parsing/fill-opacity-valid.svg
    e.style['fill-opacity'] = "-100%" should set the property value: FAIL
    e.style['fill-opacity'] = "300%" should set the property value: FAIL
    e.style['fill-opacity'] = "50%" should set the property value: FAIL
/svg/painting/parsing/paint-order-valid.svg
    e.style['paint-order'] = "fill stroke" should set the property value: FAIL
    e.style['paint-order'] = "markers fill" should set the property value: FAIL
    e.style['paint-order'] = "stroke fill" should set the property value: FAIL
/svg/painting/parsing/stroke-linejoin-valid.svg
    e.style['stroke-linejoin'] = "arcs" should set the property value: FAIL
    e.style['stroke-linejoin'] = "miter-clip" should set the property value: FAIL
/svg/painting/parsing/stroke-miterlimit-valid.svg
    e.style['stroke-miterlimit'] = "0" should set the property value: FAIL
    e.style['stroke-miterlimit'] = "0.5" should set the property value: FAIL
/svg/painting/parsing/stroke-opacity-valid.svg
    e.style['stroke-opacity'] = "-100%" should set the property value: FAIL
    e.style['stroke-opacity'] = "300%" should set the property value: FAIL
    e.style['stroke-opacity'] = "50%" should set the property value: FAIL
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/0818f88fb0cf
[wpt PR 14114] - SVG Painting: property parsing, a=testonly
https://hg.mozilla.org/integration/mozilla-inbound/rev/dad19f506077
[wpt PR 14114] - Update wpt metadata, a=testonly
https://hg.mozilla.org/mozilla-central/rev/0818f88fb0cf
https://hg.mozilla.org/mozilla-central/rev/dad19f506077
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
You need to log in before you can comment on or make changes to this bug.