Skip to content

Commit

Permalink
[SVG2] Stop accepting 'defer' in preserveAspectRatio
Browse files Browse the repository at this point in the history
[SVG2] Stop accepting 'defer' in preserveAspectRatio
https://bugs.webkit.org/show_bug.cgi?id=249112

Reviewed by Simon Fraser.

This patch is to align with SVG2 Web-Specification[1] and remove "defer" support in "preserveAspectRatio".

[1] https://www.w3.org/2015/06/12-svg-minutes.html#item11

Merge - https://src.chromium.org/viewvc/blink?view=revision&revision=198601

This patch will allow Webkit to match with other browsers as well and
will throw parse error when encountering 'defer' keyword.

* Source/WebCore/svg/SVGPreserveAspectRatioValue.cpp:
(SVGPreserveAspectRatioValue::parseInternal): Remove 'defer' parse support
* LayoutTests/svg/dom/preserve-aspect-ratio-parser.html: Rebaselined
* LayoutTests/svg/dom/preserve-aspect-ratio-parser-expected.txt: Ditto

Canonical link: https://commits.webkit.org/258253@main
  • Loading branch information
Ahmad-S792 authored and Ahmad Saleem committed Dec 22, 2022
1 parent 8b06b89 commit e68929a
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 76 deletions.
66 changes: 33 additions & 33 deletions LayoutTests/svg/dom/preserve-aspect-ratio-parser-expected.txt
Expand Up @@ -116,112 +116,112 @@ PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SV
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE

Test string: 'defer xMinYMin'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMin'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMIN
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMin'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMIN
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMid'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMID
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMid'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMid'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMID
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMax'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMAX
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMax'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMax'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMin meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMin meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMIN
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMin meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMIN
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMid meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMID
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMid meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMid meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMID
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMax meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMAX
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMax meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMax meet'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMin slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMin slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMIN
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMin slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMIN
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMid slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMid slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMid slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMinYMax slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMAX
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMidYMax slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Test string: 'defer xMaxYMax slice'
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE
PASS imageElement.preserveAspectRatio.baseVal.align is SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID
PASS imageElement.preserveAspectRatio.baseVal.meetOrSlice is SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET

Tests for some whitespace cases.

Expand Down
57 changes: 28 additions & 29 deletions LayoutTests/svg/dom/preserve-aspect-ratio-parser.html
@@ -1,6 +1,6 @@
<html>
<head>
<script src="../../resources/js-test-pre.js"></script>
<script src="../../resources/js-test.js"></script>
</head>
<body>
<p id="description"></p>
Expand Down Expand Up @@ -52,35 +52,35 @@
parsePreserveAspectRatio("xMidYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("xMaxYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");

parsePreserveAspectRatio("defer xMinYMin", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMin", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMin", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMid", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMin", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMin", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMin", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMid", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMid", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMid", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMax", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMax", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMax", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");

parsePreserveAspectRatio("defer xMinYMin meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMin meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMin meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMid meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMid", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMax", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMax", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMax", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");

parsePreserveAspectRatio("defer xMinYMin meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMin meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMin meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMid meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMid meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMid meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMax meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMax meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMax meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");

parsePreserveAspectRatio("defer xMinYMin slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMidYMin slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMaxYMin slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMIN", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMinYMid slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMidYMid slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMaxYMid slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMinYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMINYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMidYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMaxYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMAXYMAX", "SVGPreserveAspectRatio.SVG_MEETORSLICE_SLICE");
parsePreserveAspectRatio("defer xMaxYMid meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMax meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMax meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMax meet", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");

parsePreserveAspectRatio("defer xMinYMin slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMin slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMin slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMid slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMid slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMid slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMinYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMidYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");
parsePreserveAspectRatio("defer xMaxYMax slice", "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");

debug('Tests for some whitespace cases.');
debug('');
Expand Down Expand Up @@ -128,6 +128,5 @@
parsePreserveAspectRatio("xMinYMin" + String.fromCharCode(0xa0), "SVGPreserveAspectRatio.SVG_PRESERVEASPECTRATIO_XMIDYMID", "SVGPreserveAspectRatio.SVG_MEETORSLICE_MEET");

</script>
<script src="../../resources/js-test-post.js"></script>
</body>
</html>

1 comment on commit e68929a

@shallawa
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The specs link is https://svgwg.org/svg2-draft/coords.html#PreserveAspectRatioAttribute.

Removing the 'defer' keyword from preserveAspectRatio is mentioned here https://www.w3.org/TR/SVG/changes.html#coords.

Please sign in to comment.