[wpt-sync] Sync PR 47253 - Add support for calc-size() and interpolate-size to flex-basis.
Categories
(Core :: CSS Parsing and Computation, task, P4)
Tracking
()
Tracking | Status | |
---|---|---|
firefox130 | --- | fixed |
People
(Reporter: wpt-sync, Unassigned)
References
(Blocks 1 open bug, )
Details
(Whiteboard: [wptsync downstream])
Sync web-platform-tests PR 47253 into mozilla-central (this bug is closed when the sync is complete).
PR: https://github.com/web-platform-tests/wpt/pull/47253
Details from upstream follow.
L. David Baron <dbaron@chromium.org> wrote:
Add support for calc-size() and interpolate-size to flex-basis.
This contains both the changes to support calc-size() and
interpolate-size on flex-basis, and the changes to support the content
keyword as the basis of a calc-size() expression.There doesn't appear to be any code specifically testing for the
presence of the 'content' value, so we don't need to add a
blink::Length::HasContent() method and the code that would support it.Bug: 313072, 353538495
Change-Id: Ic2f97688fbe78b47a53ee6c1559ddc4dea185729
Reviewed-on: https://chromium-review.googlesource.com/5715169
WPT-Export-Revision: 6dc091ce01b120eaf29079fe376e4809ad8f4d32
Assignee | ||
Updated•3 months ago
|
Assignee | ||
Updated•3 months ago
|
Assignee | ||
Updated•3 months ago
|
Assignee | ||
Comment 1•3 months ago
|
||
Assignee | ||
Comment 2•3 months ago
|
||
CI Results
Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI
Total 3 tests and 89 subtests
Status Summary
Firefox
OK
: 3
PASS
: 56
FAIL
: 99
Chrome
OK
: 3
PASS
: 103
FAIL
: 52
Safari
OK
: 3
PASS
: 61
FAIL
: 94
Links
Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base
Details
Firefox-only Failures
- /css/css-values/calc-size/calc-size-flex-basis-on-column.html [wpt.fyi]
- resolved value for height resulting from flex-basis: min-content:
FAIL
- resolved value for height resulting from flex-basis: fit-content:
FAIL
- resolved value for height resulting from flex-basis: max-content:
FAIL
- resolved value for height resulting from flex-basis: content:
FAIL
- resolved value for height resulting from flex-basis: auto and height: auto:
FAIL
- resolved value for height resulting from flex-basis: min-content:
New Tests That Don't Pass
- /css/css-values/calc-size/calc-size-flex-basis-on-column.html [wpt.fyi]
- resolved value for height resulting from flex-basis: min-content:
FAIL
(Chrome:PASS
, Safari:PASS
) - resolved value for height resulting from flex-basis: fit-content:
FAIL
(Chrome:PASS
, Safari:PASS
) - resolved value for height resulting from flex-basis: max-content:
FAIL
(Chrome:PASS
, Safari:PASS
) - resolved value for height resulting from flex-basis: content:
FAIL
(Chrome:PASS
, Safari:PASS
) - resolved value for height resulting from flex-basis: calc-size(any, 357px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(any, 220%):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(max-content, 350%):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(fit-content, 172px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(37px, 193px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(83px, size * 3):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(min-content, size / 0.25):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(max-content, size * 5.2):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(fit-content, size / 4 + 60px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(stretch, size * 2 - 10%):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(30px, 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(calc-size(any, 30px), 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(calc-size(2in, 30px), 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(calc-size(min-content, 30px), 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(calc-size(min-content, size), size * 3):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(auto, size):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(auto, size * 1.6 + 23px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(content, size):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(content, size * 1.6 + 23px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: auto and height: auto:
FAIL
(Chrome:PASS
, Safari:PASS
) - resolved value for height resulting from flex-basis: calc-size(auto, size * 3) and height: auto:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: auto and height: calc-size(auto, size * 7):
FAIL
(Chrome:PASS
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(auto, size * 7) and height: calc-size(auto, size * 3):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: auto and height: calc-size(max-content, size + 12px):
FAIL
(Chrome:PASS
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(auto, size + 4px) and height: calc-size(fit-content, size + 12px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for height resulting from flex-basis: 372px and height: calc-size(fit-content, size + 12px):
FAIL
(Chrome:PASS
, Safari:FAIL
) - resolved value for height resulting from flex-basis: calc-size(content, size * 7) and height: 321px:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- resolved value for height resulting from flex-basis: min-content:
- /css/css-values/calc-size/calc-size-flex-basis-on-row.html [wpt.fyi]
- resolved value for width resulting from flex-basis: calc-size(any, 357px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(any, 31%):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(max-content, 31%):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(fit-content, 172px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(37px, 193px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(83px, size * 3):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(min-content, size / 2):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(max-content, size * 1.2):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(fit-content, size / 4 + 30px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(stretch, size / 2 - 10%):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(30px, 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(calc-size(any, 30px), 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(calc-size(2in, 30px), 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(calc-size(min-content, 30px), 15em):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(calc-size(min-content, size), size):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(auto, size):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(auto, size * 1.6 + 23px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(content, size):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(content, size / 2):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(auto, size * 2) and width: auto:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: auto and width: calc-size(auto, size * 1.5 + 5px):
FAIL
(Chrome:PASS
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(auto, size + 14px) and width: calc-size(auto, size * 1.5):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: auto and width: calc-size(max-content, size + 12px):
FAIL
(Chrome:PASS
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(auto, size + 4px) and width: calc-size(fit-content, size + 12px):
FAIL
(Chrome:FAIL
, Safari:FAIL
) - resolved value for width resulting from flex-basis: 472px and width: calc-size(fit-content, size + 12px):
FAIL
(Chrome:PASS
, Safari:FAIL
) - resolved value for width resulting from flex-basis: calc-size(content, size * 1.5 + 4px) and width: 321px:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- resolved value for width resulting from flex-basis: calc-size(any, 357px):
- /css/css-values/calc-size/calc-size-parsing.tentative.html [wpt.fyi]
- e.style['width'] = "calc-size(auto, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['min-width'] = "calc-size(auto, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['height'] = "calc-size(auto, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['min-height'] = "calc-size(auto, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['height'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['max-width'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['max-height'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['min-width'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['min-height'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['block-size'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['inline-size'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['max-block-size'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['max-inline-size'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['min-block-size'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['min-inline-size'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(fit-content, size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['height'] = "calc-size(min-content, size * 2)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['max-width'] = "calc-size(max-content, size / 2)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['max-height'] = "calc-size(fit-content, 30px + size / 2)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(fit-content, 50% + size / 2)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(any, 25em)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(any, 40%)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(any, 50px + 30%)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(10px, sign(size) * size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(30px, 25em)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(any, 30px), 25em)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(2in, 30px), 25em)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(min-content, 30px), 25em)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(min-content, size), size)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(30px)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(min(30px, 2em))" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(any, 30px))" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(fit-content)" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(fit-content, size * 2))" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['width'] = "calc-size(calc-size(30px))" should set the property value:
FAIL
(Chrome:PASS
, Safari:FAIL
) - e.style['flex-basis'] = "calc-size(any, 50px)" should set the property value:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - e.style['flex-basis'] = "calc-size(auto, size)" should set the property value:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - e.style['flex-basis'] = "calc-size(min-content, size)" should set the property value:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - e.style['flex-basis'] = "calc-size(max-content, size)" should set the property value:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - e.style['flex-basis'] = "calc-size(fit-content, size)" should set the property value:
FAIL
(Chrome:FAIL
, Safari:FAIL
) - e.style['flex-basis'] = "calc-size(content, size)" should set the property value:
FAIL
(Chrome:FAIL
, Safari:FAIL
)
- e.style['width'] = "calc-size(auto, size)" should set the property value:
Comment 4•3 months ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/ce3789ac1d55
https://hg.mozilla.org/mozilla-central/rev/76fe5a24f0f9
Description
•