Import css/css-sizing WPT
authorsimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 29 Oct 2019 18:21:11 +0000 (18:21 +0000)
committersimon.fraser@apple.com <simon.fraser@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 29 Oct 2019 18:21:11 +0000 (18:21 +0000)
https://bugs.webkit.org/show_bug.cgi?id=203517

Reviewed by Tim Horton.

LayoutTests/imported/w3c:

* resources/import-expectations.json:
* resources/resource-files.json:
* web-platform-tests/css/css-sizing/META.yml: Added.
* web-platform-tests/css/css-sizing/animation/height-interpolation-expected.txt: Added.
* web-platform-tests/css/css-sizing/animation/height-interpolation.html: Added.
* web-platform-tests/css/css-sizing/animation/max-height-interpolation-expected.txt: Added.
* web-platform-tests/css/css-sizing/animation/max-height-interpolation.html: Added.
* web-platform-tests/css/css-sizing/animation/max-width-interpolation-expected.txt: Added.
* web-platform-tests/css/css-sizing/animation/max-width-interpolation.html: Added.
* web-platform-tests/css/css-sizing/animation/min-height-interpolation-expected.txt: Added.
* web-platform-tests/css/css-sizing/animation/min-height-interpolation.html: Added.
* web-platform-tests/css/css-sizing/animation/min-width-interpolation-expected.txt: Added.
* web-platform-tests/css/css-sizing/animation/min-width-interpolation.html: Added.
* web-platform-tests/css/css-sizing/animation/w3c-import.log: Added.
* web-platform-tests/css/css-sizing/animation/width-interpolation-expected.txt: Added.
* web-platform-tests/css/css-sizing/animation/width-interpolation.html: Added.
* web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt: Added.
* web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html: Added.
* web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos-expected.html: Added.
* web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html: Added.
* web-platform-tests/css/css-sizing/block-fit-content-as-initial-expected.html: Added.
* web-platform-tests/css/css-sizing/block-fit-content-as-initial.html: Added.
* web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline-expected.xht: Added.
* web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline.html: Added.
* web-platform-tests/css/css-sizing/button-min-width-expected.txt: Added.
* web-platform-tests/css/css-sizing/button-min-width.html: Added.
* web-platform-tests/css/css-sizing/clone-intrinsic-size-expected.html: Added.
* web-platform-tests/css/css-sizing/clone-intrinsic-size.html: Added.
* web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi-expected.html: Added.
* web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html: Added.
* web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-expected.html: Added.
* web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size.html: Added.
* web-platform-tests/css/css-sizing/dynamic-available-size-iframe-expected.html: Added.
* web-platform-tests/css/css-sizing/dynamic-available-size-iframe.html: Added.
* web-platform-tests/css/css-sizing/fit-content-percentage-padding-expected.txt: Added.
* web-platform-tests/css/css-sizing/fit-content-percentage-padding.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008-expected.html: Added.
* web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html: Added.
* web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block-expected.xht: Added.
* web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block.html: Added.
* web-platform-tests/css/css-sizing/inheritance-001-expected.txt: Added.
* web-platform-tests/css/css-sizing/inheritance-001.html: Added.
* web-platform-tests/css/css-sizing/inheritance-002-expected.txt: Added.
* web-platform-tests/css/css-sizing/inheritance-002.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006-expected.html: Added.
* web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006.html: Added.
* web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001-expected.txt: Added.
* web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001.html: Added.
* web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline-expected.xht: Added.
* web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline.html: Added.
* web-platform-tests/css/css-sizing/parsing/box-sizing-computed-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/box-sizing-computed.html: Added.
* web-platform-tests/css/css-sizing/parsing/box-sizing-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/box-sizing-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/box-sizing-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/box-sizing-valid.html: Added.
* web-platform-tests/css/css-sizing/parsing/height-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/height-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/height-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/height-valid.html: Added.
* web-platform-tests/css/css-sizing/parsing/max-height-computed-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/max-height-computed.html: Added.
* web-platform-tests/css/css-sizing/parsing/max-height-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/max-height-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/max-height-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/max-height-valid.html: Added.
* web-platform-tests/css/css-sizing/parsing/max-width-computed-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/max-width-computed.html: Added.
* web-platform-tests/css/css-sizing/parsing/max-width-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/max-width-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/max-width-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/max-width-valid.html: Added.
* web-platform-tests/css/css-sizing/parsing/min-height-computed-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/min-height-computed.html: Added.
* web-platform-tests/css/css-sizing/parsing/min-height-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/min-height-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/min-height-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/min-height-valid.html: Added.
* web-platform-tests/css/css-sizing/parsing/min-width-computed-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/min-width-computed.html: Added.
* web-platform-tests/css/css-sizing/parsing/min-width-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/min-width-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/min-width-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/min-width-valid.html: Added.
* web-platform-tests/css/css-sizing/parsing/w3c-import.log: Added.
* web-platform-tests/css/css-sizing/parsing/width-invalid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/width-invalid.html: Added.
* web-platform-tests/css/css-sizing/parsing/width-valid-expected.txt: Added.
* web-platform-tests/css/css-sizing/parsing/width-valid.html: Added.
* web-platform-tests/css/css-sizing/percentage-height-in-flexbox-expected.txt: Added.
* web-platform-tests/css/css-sizing/percentage-height-in-flexbox.html: Added.
* web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb-expected.txt: Added.
* web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html: Added.
* web-platform-tests/css/css-sizing/percentage-min-width-expected.txt: Added.
* web-platform-tests/css/css-sizing/percentage-min-width.html: Added.
* web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1-expected.html: Added.
* web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1.html: Added.
* web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2-expected.html: Added.
* web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html: Added.
* web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a-expected.html: Added.
* web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html: Added.
* web-platform-tests/css/css-sizing/slice-intrinsic-size-expected.html: Added.
* web-platform-tests/css/css-sizing/slice-intrinsic-size.html: Added.
* web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi-expected.html: Added.
* web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi.html: Added.
* web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-expected.html: Added.
* web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size.html: Added.
* web-platform-tests/css/css-sizing/support/dynamic-available-size-iframe.html: Added.
* web-platform-tests/css/css-sizing/support/w3c-import.log: Added.
* web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float-expected.txt: Added.
* web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float.html: Added.
* web-platform-tests/css/css-sizing/table-percentage-min-width-below-float-expected.txt: Added.
* web-platform-tests/css/css-sizing/table-percentage-min-width-below-float.html: Added.
* web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float-expected.txt: Added.
* web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float.html: Added.
* web-platform-tests/css/css-sizing/w3c-import.log: Added.
* web-platform-tests/css/css-sizing/whitespace-and-break-expected.xht: Added.
* web-platform-tests/css/css-sizing/whitespace-and-break.html: Added.

LayoutTests:

* TestExpectations:
* platform/ios/TestExpectations:
* platform/ios/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt: Added.
* platform/ios/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt: Added.

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

158 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/resources/import-expectations.json
LayoutTests/imported/w3c/resources/resource-files.json
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/META.yml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/dynamic-available-size-iframe.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break-expected.xht [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break.html [new file with mode: 0644]
LayoutTests/platform/ios/TestExpectations
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt [new file with mode: 0644]

index 0a687df..104cde8 100644 (file)
@@ -1,3 +1,15 @@
+2019-10-29  Simon Fraser  <simon.fraser@apple.com>
+
+        Import css/css-sizing WPT
+        https://bugs.webkit.org/show_bug.cgi?id=203517
+
+        Reviewed by Tim Horton.
+
+        * TestExpectations:
+        * platform/ios/TestExpectations:
+        * platform/ios/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt: Added.
+        * platform/ios/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt: Added.
+
 2019-10-29  Truitt Savell  <tsavell@apple.com>
 
         Unreviewed, rolling out r251639.
index 2ab6936..0910ca3 100644 (file)
@@ -3944,6 +3944,26 @@ webkit.org/b/203338 imported/w3c/web-platform-tests/css/css-values/vh_not_refres
 
 webkit.org/b/202859 imported/w3c/web-platform-tests/html/semantics/forms/the-input-element/range-setattribute-value.html [ ImageOnlyFailure ]
 
+# wpt css-sizing failures
+webkit.org/b/203509 imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html [ ImageOnlyFailure ]
+webkit.org/b/203510 imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size.html [ ImageOnlyFailure ]
+webkit.org/b/203511 imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html [ ImageOnlyFailure ]
+webkit.org/b/203508 imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html [ ImageOnlyFailure ]
+webkit.org/b/203512 imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html [ ImageOnlyFailure ]
+webkit.org/b/203512 imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html [ ImageOnlyFailure ]
+webkit.org/b/203513 imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html [ Pass Failure ]
+webkit.org/b/203514 imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html [ ImageOnlyFailure ]
+webkit.org/b/203514 imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html [ ImageOnlyFailure ]
+webkit.org/b/203515 imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size.html [ ImageOnlyFailure ]
+webkit.org/b/203516 imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break.html [ ImageOnlyFailure ]
+
 # wpt css-text-decor failures
 webkit.org/b/203530 imported/w3c/web-platform-tests/css/css-text-decor/text-decoration-line-recalc.html [ ImageOnlyFailure ]
 webkit.org/b/203531 imported/w3c/web-platform-tests/css/css-text-decor/text-decoration-propagation-shadow.html [ ImageOnlyFailure ]
index eea1110..b935963 100644 (file)
@@ -1,5 +1,165 @@
 2019-10-29  Simon Fraser  <simon.fraser@apple.com>
 
+        Import css/css-sizing WPT
+        https://bugs.webkit.org/show_bug.cgi?id=203517
+
+        Reviewed by Tim Horton.
+
+        * resources/import-expectations.json:
+        * resources/resource-files.json:
+        * web-platform-tests/css/css-sizing/META.yml: Added.
+        * web-platform-tests/css/css-sizing/animation/height-interpolation-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/animation/height-interpolation.html: Added.
+        * web-platform-tests/css/css-sizing/animation/max-height-interpolation-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/animation/max-height-interpolation.html: Added.
+        * web-platform-tests/css/css-sizing/animation/max-width-interpolation-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/animation/max-width-interpolation.html: Added.
+        * web-platform-tests/css/css-sizing/animation/min-height-interpolation-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/animation/min-height-interpolation.html: Added.
+        * web-platform-tests/css/css-sizing/animation/min-width-interpolation-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/animation/min-width-interpolation.html: Added.
+        * web-platform-tests/css/css-sizing/animation/w3c-import.log: Added.
+        * web-platform-tests/css/css-sizing/animation/width-interpolation-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/animation/width-interpolation.html: Added.
+        * web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html: Added.
+        * web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos-expected.html: Added.
+        * web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html: Added.
+        * web-platform-tests/css/css-sizing/block-fit-content-as-initial-expected.html: Added.
+        * web-platform-tests/css/css-sizing/block-fit-content-as-initial.html: Added.
+        * web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline-expected.xht: Added.
+        * web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline.html: Added.
+        * web-platform-tests/css/css-sizing/button-min-width-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/button-min-width.html: Added.
+        * web-platform-tests/css/css-sizing/clone-intrinsic-size-expected.html: Added.
+        * web-platform-tests/css/css-sizing/clone-intrinsic-size.html: Added.
+        * web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi-expected.html: Added.
+        * web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html: Added.
+        * web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-expected.html: Added.
+        * web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size.html: Added.
+        * web-platform-tests/css/css-sizing/dynamic-available-size-iframe-expected.html: Added.
+        * web-platform-tests/css/css-sizing/dynamic-available-size-iframe.html: Added.
+        * web-platform-tests/css/css-sizing/fit-content-percentage-padding-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/fit-content-percentage-padding.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008-expected.html: Added.
+        * web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html: Added.
+        * web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block-expected.xht: Added.
+        * web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block.html: Added.
+        * web-platform-tests/css/css-sizing/inheritance-001-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/inheritance-001.html: Added.
+        * web-platform-tests/css/css-sizing/inheritance-002-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/inheritance-002.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006-expected.html: Added.
+        * web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006.html: Added.
+        * web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001.html: Added.
+        * web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline-expected.xht: Added.
+        * web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/box-sizing-computed-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/box-sizing-computed.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/box-sizing-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/box-sizing-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/box-sizing-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/box-sizing-valid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/height-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/height-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/height-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/height-valid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-height-computed-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-height-computed.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-height-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-height-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-height-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-height-valid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-width-computed-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-width-computed.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-width-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-width-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-width-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/max-width-valid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-height-computed-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-height-computed.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-height-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-height-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-height-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-height-valid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-width-computed-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-width-computed.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-width-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-width-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-width-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/min-width-valid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/w3c-import.log: Added.
+        * web-platform-tests/css/css-sizing/parsing/width-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/width-invalid.html: Added.
+        * web-platform-tests/css/css-sizing/parsing/width-valid-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/parsing/width-valid.html: Added.
+        * web-platform-tests/css/css-sizing/percentage-height-in-flexbox-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/percentage-height-in-flexbox.html: Added.
+        * web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html: Added.
+        * web-platform-tests/css/css-sizing/percentage-min-width-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/percentage-min-width.html: Added.
+        * web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1-expected.html: Added.
+        * web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1.html: Added.
+        * web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2-expected.html: Added.
+        * web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html: Added.
+        * web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a-expected.html: Added.
+        * web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html: Added.
+        * web-platform-tests/css/css-sizing/slice-intrinsic-size-expected.html: Added.
+        * web-platform-tests/css/css-sizing/slice-intrinsic-size.html: Added.
+        * web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi-expected.html: Added.
+        * web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi.html: Added.
+        * web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-expected.html: Added.
+        * web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size.html: Added.
+        * web-platform-tests/css/css-sizing/support/dynamic-available-size-iframe.html: Added.
+        * web-platform-tests/css/css-sizing/support/w3c-import.log: Added.
+        * web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float.html: Added.
+        * web-platform-tests/css/css-sizing/table-percentage-min-width-below-float-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/table-percentage-min-width-below-float.html: Added.
+        * web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float-expected.txt: Added.
+        * web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float.html: Added.
+        * web-platform-tests/css/css-sizing/w3c-import.log: Added.
+        * web-platform-tests/css/css-sizing/whitespace-and-break-expected.xht: Added.
+        * web-platform-tests/css/css-sizing/whitespace-and-break.html: Added.
+
+2019-10-29  Simon Fraser  <simon.fraser@apple.com>
+
         https://bugs.webkit.org/show_bug.cgi?id=203571
         New Layout Test web-platform-tests/css/css-shapes/shape-outside/supported-shapes/polygon/shape-outside-polygon-crash.html is Missing Expectations
         
index 7e1414e..d50d2e7 100644 (file)
@@ -2,6 +2,7 @@
     "apng": "import", 
     "css/css-position": "import", 
     "css/css-shapes": "import", 
+    "css/css-sizing": "import", 
     "css/css-syntax": "import", 
     "css/css-text-decor": "import", 
     "css/css-values": "import", 
     "web-platform-tests/worklets": "skip", 
     "web-platform-tests/x-frame-options": "skip", 
     "web-platform-tests/xhr": "import"
-}
+}
\ No newline at end of file
index 2fb6b85..8698763 100644 (file)
@@ -13,6 +13,7 @@
     ],
     "files": [
         "css/css-shapes/test-plan/index.html",
+        "css/css-sizing/support/dynamic-available-size-iframe.html",
         "css/css-syntax/charset/page-utf16-css-bomless-utf16be.html",
         "css/css-syntax/charset/page-utf16-css-no-decl-ascii-only.html",
         "css/css-text-decor/text-decoration-visibility-001.xht",
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/META.yml b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/META.yml
new file mode 100644 (file)
index 0000000..086e654
--- /dev/null
@@ -0,0 +1,4 @@
+spec: https://drafts.csswg.org/css-sizing/
+suggested_reviewers:
+  - tabatkins
+  - fantasai
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation-expected.txt
new file mode 100644 (file)
index 0000000..27a1d6b
--- /dev/null
@@ -0,0 +1,130 @@
+
+PASS CSS Transitions: property <height> from neutral to [20px] at (-0.3) should be [7px] 
+PASS CSS Transitions: property <height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions: property <height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions: property <height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions: property <height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <height> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Transitions with transition: all: property <height> from neutral to [20px] at (-0.3) should be [7px] 
+PASS CSS Transitions with transition: all: property <height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions with transition: all: property <height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions with transition: all: property <height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Animations: property <height> from neutral to [20px] at (-0.3) should be [7px] 
+PASS CSS Animations: property <height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Animations: property <height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Animations: property <height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Animations: property <height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <height> from neutral to [20px] at (1.5) should be [25px] 
+PASS Web Animations: property <height> from neutral to [20px] at (-0.3) should be [7px] 
+FAIL Web Animations: property <height> from neutral to [20px] at (0) should be [10px] assert_equals: expected "10px " but got "7px "
+FAIL Web Animations: property <height> from neutral to [20px] at (0.3) should be [13px] assert_equals: expected "13px " but got "10.89px "
+FAIL Web Animations: property <height> from neutral to [20px] at (0.6) should be [16px] assert_equals: expected "16px " but got "16.36px "
+PASS Web Animations: property <height> from neutral to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <height> from neutral to [20px] at (1.5) should be [25px] assert_equals: expected "25px " but got "20px "
+PASS CSS Transitions: property <height> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <height> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <height> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (-0.3) should be [initial] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (0) should be [initial] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (0.3) should be [initial] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS Web Animations: property <height> from [initial] to [20px] at (-0.3) should be [initial] 
+PASS Web Animations: property <height> from [initial] to [20px] at (0) should be [initial] 
+PASS Web Animations: property <height> from [initial] to [20px] at (0.3) should be [initial] 
+PASS Web Animations: property <height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <height> from [initial] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions: property <height> from [inherit] to [20px] at (-0.3) should be [254px] 
+PASS CSS Transitions: property <height> from [inherit] to [20px] at (0) should be [200px] 
+PASS CSS Transitions: property <height> from [inherit] to [20px] at (0.3) should be [146px] 
+PASS CSS Transitions: property <height> from [inherit] to [20px] at (0.6) should be [92px] 
+PASS CSS Transitions: property <height> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <height> from [inherit] to [20px] at (1.5) should be [0px] 
+PASS CSS Transitions with transition: all: property <height> from [inherit] to [20px] at (-0.3) should be [254px] 
+PASS CSS Transitions with transition: all: property <height> from [inherit] to [20px] at (0) should be [200px] 
+PASS CSS Transitions with transition: all: property <height> from [inherit] to [20px] at (0.3) should be [146px] 
+PASS CSS Transitions with transition: all: property <height> from [inherit] to [20px] at (0.6) should be [92px] 
+PASS CSS Transitions with transition: all: property <height> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [inherit] to [20px] at (1.5) should be [0px] 
+FAIL CSS Animations: property <height> from [inherit] to [20px] at (-0.3) should be [254px] assert_equals: expected "254px " but got "7px "
+FAIL CSS Animations: property <height> from [inherit] to [20px] at (0) should be [200px] assert_equals: expected "200px " but got "10px "
+FAIL CSS Animations: property <height> from [inherit] to [20px] at (0.3) should be [146px] assert_equals: expected "146px " but got "13px "
+FAIL CSS Animations: property <height> from [inherit] to [20px] at (0.6) should be [92px] assert_equals: expected "92px " but got "16px "
+PASS CSS Animations: property <height> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Animations: property <height> from [inherit] to [20px] at (1.5) should be [0px] assert_equals: expected "0px " but got "25px "
+FAIL Web Animations: property <height> from [inherit] to [20px] at (-0.3) should be [254px] assert_equals: expected "254px " but got "7px "
+FAIL Web Animations: property <height> from [inherit] to [20px] at (0) should be [200px] assert_equals: expected "200px " but got "7px "
+FAIL Web Animations: property <height> from [inherit] to [20px] at (0.3) should be [146px] assert_equals: expected "146px " but got "10.89px "
+FAIL Web Animations: property <height> from [inherit] to [20px] at (0.6) should be [92px] assert_equals: expected "92px " but got "16.36px "
+PASS Web Animations: property <height> from [inherit] to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <height> from [inherit] to [20px] at (1.5) should be [0px] assert_equals: expected "0px " but got "20px "
+PASS CSS Transitions: property <height> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <height> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <height> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (-0.3) should be [unset] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (0) should be [unset] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (0.3) should be [unset] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS Web Animations: property <height> from [unset] to [20px] at (-0.3) should be [unset] 
+PASS Web Animations: property <height> from [unset] to [20px] at (0) should be [unset] 
+PASS Web Animations: property <height> from [unset] to [20px] at (0.3) should be [unset] 
+PASS Web Animations: property <height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <height> from [unset] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions: property <height> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS CSS Transitions: property <height> from [0px] to [100px] at (0) should be [0px] 
+PASS CSS Transitions: property <height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions: property <height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions: property <height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions: property <height> from [0px] to [100px] at (1.5) should be [150px] 
+PASS CSS Transitions with transition: all: property <height> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS CSS Transitions with transition: all: property <height> from [0px] to [100px] at (0) should be [0px] 
+PASS CSS Transitions with transition: all: property <height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions with transition: all: property <height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions with transition: all: property <height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions with transition: all: property <height> from [0px] to [100px] at (1.5) should be [150px] 
+PASS CSS Animations: property <height> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS CSS Animations: property <height> from [0px] to [100px] at (0) should be [0px] 
+PASS CSS Animations: property <height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Animations: property <height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Animations: property <height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Animations: property <height> from [0px] to [100px] at (1.5) should be [150px] 
+PASS Web Animations: property <height> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS Web Animations: property <height> from [0px] to [100px] at (0) should be [0px] 
+PASS Web Animations: property <height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS Web Animations: property <height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS Web Animations: property <height> from [0px] to [100px] at (1) should be [100px] 
+PASS Web Animations: property <height> from [0px] to [100px] at (1.5) should be [150px] 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation.html
new file mode 100644 (file)
index 0000000..10ceed5
--- /dev/null
@@ -0,0 +1,81 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>height interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-height">
+<meta name="assert" content="height supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+  height: 200px;
+}
+.target {
+  width: 100px;
+  height: 100px;
+  background-color: black;
+  display: inline-block;
+  margin-right: 5px;
+  height: 10px;
+}
+.expected {
+  background-color: green;
+}
+</style>
+
+<body></body>
+
+<script>
+test_interpolation({
+  property: 'height',
+  from: neutralKeyframe,
+  to: '20px',
+}, [
+  {at: -0.3, expect: '7px'},
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '13px'},
+  {at: 0.6, expect: '16px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '25px'},
+]);
+
+test_no_interpolation({
+  property: 'height',
+  from: 'initial',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'height',
+  from: 'inherit',
+  to: '20px',
+}, [
+  {at: -0.3, expect: '254px'},
+  {at: 0, expect: '200px'},
+  {at: 0.3, expect: '146px'},
+  {at: 0.6, expect: '92px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '0px'},
+]);
+
+test_no_interpolation({
+  property: 'height',
+  from: 'unset',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'height',
+  from: '0px',
+  to: '100px',
+}, [
+  {at: -0.3, expect: '0px'}, // CSS height can't be negative.
+  {at: 0, expect: '0px'},
+  {at: 0.3, expect: '30px'},
+  {at: 0.6, expect: '60px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '150px'}
+]);
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation-expected.txt
new file mode 100644 (file)
index 0000000..1f28f86
--- /dev/null
@@ -0,0 +1,130 @@
+
+PASS CSS Transitions: property <max-height> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions: property <max-height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions: property <max-height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions: property <max-height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions: property <max-height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-height> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Transitions with transition: all: property <max-height> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions with transition: all: property <max-height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <max-height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions with transition: all: property <max-height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions with transition: all: property <max-height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Animations: property <max-height> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Animations: property <max-height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Animations: property <max-height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Animations: property <max-height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Animations: property <max-height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <max-height> from neutral to [20px] at (1.5) should be [25px] 
+PASS Web Animations: property <max-height> from neutral to [20px] at (-0.5) should be [5px] 
+FAIL Web Animations: property <max-height> from neutral to [20px] at (0) should be [10px] assert_equals: expected "10px " but got "5px "
+FAIL Web Animations: property <max-height> from neutral to [20px] at (0.3) should be [13px] assert_equals: expected "13px " but got "9.5px "
+FAIL Web Animations: property <max-height> from neutral to [20px] at (0.6) should be [16px] assert_equals: expected "16px " but got "15.8px "
+PASS Web Animations: property <max-height> from neutral to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <max-height> from neutral to [20px] at (1.5) should be [25px] assert_equals: expected "25px " but got "20px "
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [initial] to [20px] at (1.5) should be [20px] 
+FAIL CSS Animations: property <max-height> from [initial] to [20px] at (-0.3) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-height> from [initial] to [20px] at (0) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-height> from [initial] to [20px] at (0.3) should be [initial] assert_equals: expected "none " but got "20px "
+PASS CSS Animations: property <max-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <max-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <max-height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <max-height> from [initial] to [20px] at (1.5) should be [20px] 
+FAIL Web Animations: property <max-height> from [initial] to [20px] at (-0.3) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-height> from [initial] to [20px] at (0) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-height> from [initial] to [20px] at (0.3) should be [initial] assert_equals: expected "none " but got "20px "
+PASS Web Animations: property <max-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <max-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <max-height> from [initial] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <max-height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions: property <max-height> from [inherit] to [20px] at (-0.5) should be [35px] 
+PASS CSS Transitions: property <max-height> from [inherit] to [20px] at (0) should be [30px] 
+PASS CSS Transitions: property <max-height> from [inherit] to [20px] at (0.3) should be [27px] 
+PASS CSS Transitions: property <max-height> from [inherit] to [20px] at (0.6) should be [24px] 
+PASS CSS Transitions: property <max-height> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-height> from [inherit] to [20px] at (1.5) should be [15px] 
+PASS CSS Transitions with transition: all: property <max-height> from [inherit] to [20px] at (-0.5) should be [35px] 
+PASS CSS Transitions with transition: all: property <max-height> from [inherit] to [20px] at (0) should be [30px] 
+PASS CSS Transitions with transition: all: property <max-height> from [inherit] to [20px] at (0.3) should be [27px] 
+PASS CSS Transitions with transition: all: property <max-height> from [inherit] to [20px] at (0.6) should be [24px] 
+PASS CSS Transitions with transition: all: property <max-height> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [inherit] to [20px] at (1.5) should be [15px] 
+FAIL CSS Animations: property <max-height> from [inherit] to [20px] at (-0.5) should be [35px] assert_equals: expected "35px " but got "5px "
+FAIL CSS Animations: property <max-height> from [inherit] to [20px] at (0) should be [30px] assert_equals: expected "30px " but got "10px "
+FAIL CSS Animations: property <max-height> from [inherit] to [20px] at (0.3) should be [27px] assert_equals: expected "27px " but got "13px "
+FAIL CSS Animations: property <max-height> from [inherit] to [20px] at (0.6) should be [24px] assert_equals: expected "24px " but got "16px "
+PASS CSS Animations: property <max-height> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Animations: property <max-height> from [inherit] to [20px] at (1.5) should be [15px] assert_equals: expected "15px " but got "25px "
+FAIL Web Animations: property <max-height> from [inherit] to [20px] at (-0.5) should be [35px] assert_equals: expected "35px " but got "5px "
+FAIL Web Animations: property <max-height> from [inherit] to [20px] at (0) should be [30px] assert_equals: expected "30px " but got "5px "
+FAIL Web Animations: property <max-height> from [inherit] to [20px] at (0.3) should be [27px] assert_equals: expected "27px " but got "9.5px "
+FAIL Web Animations: property <max-height> from [inherit] to [20px] at (0.6) should be [24px] assert_equals: expected "24px " but got "15.8px "
+PASS Web Animations: property <max-height> from [inherit] to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <max-height> from [inherit] to [20px] at (1.5) should be [15px] assert_equals: expected "15px " but got "20px "
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-height> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL CSS Animations: property <max-height> from [unset] to [20px] at (-0.3) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-height> from [unset] to [20px] at (0) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-height> from [unset] to [20px] at (0.3) should be [unset] assert_equals: expected "none " but got "20px "
+PASS CSS Animations: property <max-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <max-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <max-height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <max-height> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL Web Animations: property <max-height> from [unset] to [20px] at (-0.3) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-height> from [unset] to [20px] at (0) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-height> from [unset] to [20px] at (0.3) should be [unset] assert_equals: expected "none " but got "20px "
+PASS Web Animations: property <max-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <max-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <max-height> from [unset] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <max-height> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL CSS Transitions: property <max-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions: property <max-height> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions: property <max-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions: property <max-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions: property <max-height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions: property <max-height> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Transitions with transition: all: property <max-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions with transition: all: property <max-height> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions with transition: all: property <max-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions with transition: all: property <max-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions with transition: all: property <max-height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions with transition: all: property <max-height> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Animations: property <max-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Animations: property <max-height> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Animations: property <max-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Animations: property <max-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Animations: property <max-height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Animations: property <max-height> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL Web Animations: property <max-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS Web Animations: property <max-height> from [0px] to [100px] at (0) should be [0] 
+PASS Web Animations: property <max-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS Web Animations: property <max-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS Web Animations: property <max-height> from [0px] to [100px] at (1) should be [100px] 
+PASS Web Animations: property <max-height> from [0px] to [100px] at (1.5) should be [150px] 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation.html
new file mode 100644 (file)
index 0000000..c4cab0e
--- /dev/null
@@ -0,0 +1,87 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>max-height interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-height">
+<meta name="assert" content="max-height supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+  max-height: 30px;
+}
+.target {
+  width: 100px;
+  height: 100px;
+  background-color: black;
+  display: inline-block;
+  max-height: 10px;
+}
+.expected {
+  background-color: green;
+}
+
+</style>
+
+<body>
+<template id="target-template">
+  <div>
+    <div class="target"></div>
+  </div>
+</template>
+</body>
+
+<script>
+test_interpolation({
+  property: 'max-height',
+  from: neutralKeyframe,
+  to: '20px',
+}, [
+  {at: -0.5, expect: '5px'},
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '13px'},
+  {at: 0.6, expect: '16px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '25px'},
+]);
+
+test_no_interpolation({
+  property: 'max-height',
+  from: 'initial',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'max-height',
+  from: 'inherit',
+  to: '20px',
+}, [
+  {at: -0.5, expect: '35px'},
+  {at: 0, expect: '30px'},
+  {at: 0.3, expect: '27px'},
+  {at: 0.6, expect: '24px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '15px'},
+]);
+
+test_no_interpolation({
+  property: 'max-height',
+  from: 'unset',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'max-height',
+  from: '0px',
+  to: '100px',
+}, [
+  {at: -0.5, expect: '0'}, // CSS max-height can't be negative.
+  {at: 0, expect: '0'},
+  {at: 0.3, expect: '30px'},
+  {at: 0.6, expect: '60px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '150px'}
+]);
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation-expected.txt
new file mode 100644 (file)
index 0000000..b569cc6
--- /dev/null
@@ -0,0 +1,130 @@
+
+PASS CSS Transitions: property <max-width> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions: property <max-width> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions: property <max-width> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions: property <max-width> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions: property <max-width> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-width> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Transitions with transition: all: property <max-width> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions with transition: all: property <max-width> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <max-width> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions with transition: all: property <max-width> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions with transition: all: property <max-width> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Animations: property <max-width> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Animations: property <max-width> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Animations: property <max-width> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Animations: property <max-width> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Animations: property <max-width> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <max-width> from neutral to [20px] at (1.5) should be [25px] 
+PASS Web Animations: property <max-width> from neutral to [20px] at (-0.5) should be [5px] 
+FAIL Web Animations: property <max-width> from neutral to [20px] at (0) should be [10px] assert_equals: expected "10px " but got "5px "
+FAIL Web Animations: property <max-width> from neutral to [20px] at (0.3) should be [13px] assert_equals: expected "13px " but got "9.5px "
+FAIL Web Animations: property <max-width> from neutral to [20px] at (0.6) should be [16px] assert_equals: expected "16px " but got "15.8px "
+PASS Web Animations: property <max-width> from neutral to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <max-width> from neutral to [20px] at (1.5) should be [25px] assert_equals: expected "25px " but got "20px "
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-width> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [initial] to [20px] at (1.5) should be [20px] 
+FAIL CSS Animations: property <max-width> from [initial] to [20px] at (-0.3) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-width> from [initial] to [20px] at (0) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-width> from [initial] to [20px] at (0.3) should be [initial] assert_equals: expected "none " but got "20px "
+PASS CSS Animations: property <max-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <max-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <max-width> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <max-width> from [initial] to [20px] at (1.5) should be [20px] 
+FAIL Web Animations: property <max-width> from [initial] to [20px] at (-0.3) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-width> from [initial] to [20px] at (0) should be [initial] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-width> from [initial] to [20px] at (0.3) should be [initial] assert_equals: expected "none " but got "20px "
+PASS Web Animations: property <max-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <max-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <max-width> from [initial] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <max-width> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions: property <max-width> from [inherit] to [20px] at (-0.5) should be [140px] 
+PASS CSS Transitions: property <max-width> from [inherit] to [20px] at (0) should be [100px] 
+PASS CSS Transitions: property <max-width> from [inherit] to [20px] at (0.3) should be [76px] 
+PASS CSS Transitions: property <max-width> from [inherit] to [20px] at (0.6) should be [52px] 
+PASS CSS Transitions: property <max-width> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Transitions: property <max-width> from [inherit] to [20px] at (1.5) should be [0px] assert_equals: expected "0px " but got "- 20px "
+PASS CSS Transitions with transition: all: property <max-width> from [inherit] to [20px] at (-0.5) should be [140px] 
+PASS CSS Transitions with transition: all: property <max-width> from [inherit] to [20px] at (0) should be [100px] 
+PASS CSS Transitions with transition: all: property <max-width> from [inherit] to [20px] at (0.3) should be [76px] 
+PASS CSS Transitions with transition: all: property <max-width> from [inherit] to [20px] at (0.6) should be [52px] 
+PASS CSS Transitions with transition: all: property <max-width> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Transitions with transition: all: property <max-width> from [inherit] to [20px] at (1.5) should be [0px] assert_equals: expected "0px " but got "- 20px "
+FAIL CSS Animations: property <max-width> from [inherit] to [20px] at (-0.5) should be [140px] assert_equals: expected "140px " but got "5px "
+FAIL CSS Animations: property <max-width> from [inherit] to [20px] at (0) should be [100px] assert_equals: expected "100px " but got "10px "
+FAIL CSS Animations: property <max-width> from [inherit] to [20px] at (0.3) should be [76px] assert_equals: expected "76px " but got "13px "
+FAIL CSS Animations: property <max-width> from [inherit] to [20px] at (0.6) should be [52px] assert_equals: expected "52px " but got "16px "
+PASS CSS Animations: property <max-width> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Animations: property <max-width> from [inherit] to [20px] at (1.5) should be [0px] assert_equals: expected "0px " but got "25px "
+FAIL Web Animations: property <max-width> from [inherit] to [20px] at (-0.5) should be [140px] assert_equals: expected "140px " but got "5px "
+FAIL Web Animations: property <max-width> from [inherit] to [20px] at (0) should be [100px] assert_equals: expected "100px " but got "5px "
+FAIL Web Animations: property <max-width> from [inherit] to [20px] at (0.3) should be [76px] assert_equals: expected "76px " but got "9.5px "
+FAIL Web Animations: property <max-width> from [inherit] to [20px] at (0.6) should be [52px] assert_equals: expected "52px " but got "15.8px "
+PASS Web Animations: property <max-width> from [inherit] to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <max-width> from [inherit] to [20px] at (1.5) should be [0px] assert_equals: expected "0px " but got "20px "
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <max-width> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <max-width> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL CSS Animations: property <max-width> from [unset] to [20px] at (-0.3) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-width> from [unset] to [20px] at (0) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL CSS Animations: property <max-width> from [unset] to [20px] at (0.3) should be [unset] assert_equals: expected "none " but got "20px "
+PASS CSS Animations: property <max-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <max-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <max-width> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <max-width> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL Web Animations: property <max-width> from [unset] to [20px] at (-0.3) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-width> from [unset] to [20px] at (0) should be [unset] assert_equals: expected "none " but got "20px "
+FAIL Web Animations: property <max-width> from [unset] to [20px] at (0.3) should be [unset] assert_equals: expected "none " but got "20px "
+PASS Web Animations: property <max-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <max-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <max-width> from [unset] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <max-width> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL CSS Transitions: property <max-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions: property <max-width> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions: property <max-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions: property <max-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions: property <max-width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions: property <max-width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Transitions with transition: all: property <max-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions with transition: all: property <max-width> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions with transition: all: property <max-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions with transition: all: property <max-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions with transition: all: property <max-width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions with transition: all: property <max-width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Animations: property <max-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Animations: property <max-width> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Animations: property <max-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Animations: property <max-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Animations: property <max-width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Animations: property <max-width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL Web Animations: property <max-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS Web Animations: property <max-width> from [0px] to [100px] at (0) should be [0] 
+PASS Web Animations: property <max-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS Web Animations: property <max-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS Web Animations: property <max-width> from [0px] to [100px] at (1) should be [100px] 
+PASS Web Animations: property <max-width> from [0px] to [100px] at (1.5) should be [150px] 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation.html
new file mode 100644 (file)
index 0000000..111199b
--- /dev/null
@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>max-width interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-width">
+<meta name="assert" content="max-width supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+  max-width: 100px;
+}
+.target {
+  width: 200px;
+  height: 10px;
+  background-color: black;
+  max-width: 10px;
+}
+.expected {
+  background-color: green;
+  margin-bottom: 10px;
+}
+</style>
+
+<body></body>
+
+<script>
+test_interpolation({
+  property: 'max-width',
+  from: neutralKeyframe,
+  to: '20px',
+}, [
+  {at: -0.5, expect: '5px'},
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '13px'},
+  {at: 0.6, expect: '16px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '25px'},
+]);
+
+test_no_interpolation({
+  property: 'max-width',
+  from: 'initial',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'max-width',
+  from: 'inherit',
+  to: '20px',
+}, [
+  {at: -0.5, expect: '140px'},
+  {at: 0, expect: '100px'},
+  {at: 0.3, expect: '76px'},
+  {at: 0.6, expect: '52px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '0px'},
+]);
+
+test_no_interpolation({
+  property: 'max-width',
+  from: 'unset',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'max-width',
+  from: '0px',
+  to: '100px',
+}, [
+  {at: -0.5, expect: '0'}, // CSS max-width can't be negative.
+  {at: 0, expect: '0'},
+  {at: 0.3, expect: '30px'},
+  {at: 0.6, expect: '60px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '150px'}
+]);
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation-expected.txt
new file mode 100644 (file)
index 0000000..5f23cf1
--- /dev/null
@@ -0,0 +1,130 @@
+
+PASS CSS Transitions: property <min-height> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions: property <min-height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions: property <min-height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions: property <min-height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions: property <min-height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-height> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Transitions with transition: all: property <min-height> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions with transition: all: property <min-height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <min-height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions with transition: all: property <min-height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions with transition: all: property <min-height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Animations: property <min-height> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Animations: property <min-height> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Animations: property <min-height> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Animations: property <min-height> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Animations: property <min-height> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <min-height> from neutral to [20px] at (1.5) should be [25px] 
+PASS Web Animations: property <min-height> from neutral to [20px] at (-0.5) should be [5px] 
+FAIL Web Animations: property <min-height> from neutral to [20px] at (0) should be [10px] assert_equals: expected "10px " but got "5px "
+FAIL Web Animations: property <min-height> from neutral to [20px] at (0.3) should be [13px] assert_equals: expected "13px " but got "9.5px "
+FAIL Web Animations: property <min-height> from neutral to [20px] at (0.6) should be [16px] assert_equals: expected "16px " but got "15.8px "
+PASS Web Animations: property <min-height> from neutral to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <min-height> from neutral to [20px] at (1.5) should be [25px] assert_equals: expected "25px " but got "20px "
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (-0.3) should be [initial] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (0) should be [initial] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (0.3) should be [initial] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <min-height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (-0.3) should be [initial] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (0) should be [initial] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (0.3) should be [initial] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <min-height> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions: property <min-height> from [inherit] to [20px] at (-0.5) should be [35px] 
+PASS CSS Transitions: property <min-height> from [inherit] to [20px] at (0) should be [30px] 
+PASS CSS Transitions: property <min-height> from [inherit] to [20px] at (0.3) should be [27px] 
+PASS CSS Transitions: property <min-height> from [inherit] to [20px] at (0.6) should be [24px] 
+PASS CSS Transitions: property <min-height> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-height> from [inherit] to [20px] at (1.5) should be [15px] 
+PASS CSS Transitions with transition: all: property <min-height> from [inherit] to [20px] at (-0.5) should be [35px] 
+PASS CSS Transitions with transition: all: property <min-height> from [inherit] to [20px] at (0) should be [30px] 
+PASS CSS Transitions with transition: all: property <min-height> from [inherit] to [20px] at (0.3) should be [27px] 
+PASS CSS Transitions with transition: all: property <min-height> from [inherit] to [20px] at (0.6) should be [24px] 
+PASS CSS Transitions with transition: all: property <min-height> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [inherit] to [20px] at (1.5) should be [15px] 
+FAIL CSS Animations: property <min-height> from [inherit] to [20px] at (-0.5) should be [35px] assert_equals: expected "35px " but got "5px "
+FAIL CSS Animations: property <min-height> from [inherit] to [20px] at (0) should be [30px] assert_equals: expected "30px " but got "10px "
+FAIL CSS Animations: property <min-height> from [inherit] to [20px] at (0.3) should be [27px] assert_equals: expected "27px " but got "13px "
+FAIL CSS Animations: property <min-height> from [inherit] to [20px] at (0.6) should be [24px] assert_equals: expected "24px " but got "16px "
+PASS CSS Animations: property <min-height> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Animations: property <min-height> from [inherit] to [20px] at (1.5) should be [15px] assert_equals: expected "15px " but got "25px "
+FAIL Web Animations: property <min-height> from [inherit] to [20px] at (-0.5) should be [35px] assert_equals: expected "35px " but got "5px "
+FAIL Web Animations: property <min-height> from [inherit] to [20px] at (0) should be [30px] assert_equals: expected "30px " but got "5px "
+FAIL Web Animations: property <min-height> from [inherit] to [20px] at (0.3) should be [27px] assert_equals: expected "27px " but got "9.5px "
+FAIL Web Animations: property <min-height> from [inherit] to [20px] at (0.6) should be [24px] assert_equals: expected "24px " but got "15.8px "
+PASS Web Animations: property <min-height> from [inherit] to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <min-height> from [inherit] to [20px] at (1.5) should be [15px] assert_equals: expected "15px " but got "20px "
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (-0.3) should be [unset] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (0) should be [unset] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (0.3) should be [unset] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <min-height> from [unset] to [20px] at (1.5) should be [20px] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (-0.3) should be [unset] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (0) should be [unset] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (0.3) should be [unset] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <min-height> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL CSS Transitions: property <min-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions: property <min-height> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions: property <min-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions: property <min-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions: property <min-height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions: property <min-height> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Transitions with transition: all: property <min-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions with transition: all: property <min-height> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions with transition: all: property <min-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions with transition: all: property <min-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions with transition: all: property <min-height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions with transition: all: property <min-height> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Animations: property <min-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Animations: property <min-height> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Animations: property <min-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Animations: property <min-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Animations: property <min-height> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Animations: property <min-height> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL Web Animations: property <min-height> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS Web Animations: property <min-height> from [0px] to [100px] at (0) should be [0] 
+PASS Web Animations: property <min-height> from [0px] to [100px] at (0.3) should be [30px] 
+PASS Web Animations: property <min-height> from [0px] to [100px] at (0.6) should be [60px] 
+PASS Web Animations: property <min-height> from [0px] to [100px] at (1) should be [100px] 
+PASS Web Animations: property <min-height> from [0px] to [100px] at (1.5) should be [150px] 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation.html
new file mode 100644 (file)
index 0000000..6fd5b4e
--- /dev/null
@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>min-height interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-height">
+<meta name="assert" content="min-height supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+  min-height: 30px;
+}
+.target {
+  width: 10px;
+  height: 0px;
+  background-color: black;
+  display: inline-block;
+  min-height: 10px;
+}
+.expected {
+  background-color: green;
+}
+</style>
+
+<body></body>
+
+<script>
+test_interpolation({
+  property: 'min-height',
+  from: neutralKeyframe,
+  to: '20px',
+}, [
+  {at: -0.5, expect: '5px'},
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '13px'},
+  {at: 0.6, expect: '16px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '25px'},
+]);
+
+test_no_interpolation({
+  property: 'min-height',
+  from: 'initial',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'min-height',
+  from: 'inherit',
+  to: '20px',
+}, [
+  {at: -0.5, expect: '35px'},
+  {at: 0, expect: '30px'},
+  {at: 0.3, expect: '27px'},
+  {at: 0.6, expect: '24px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '15px'},
+]);
+
+test_no_interpolation({
+  property: 'min-height',
+  from: 'unset',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'min-height',
+  from: '0px',
+  to: '100px',
+}, [
+  {at: -0.5, expect: '0'}, // CSS min-height can't be negative.
+  {at: 0, expect: '0'},
+  {at: 0.3, expect: '30px'},
+  {at: 0.6, expect: '60px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '150px'}
+]);
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation-expected.txt
new file mode 100644 (file)
index 0000000..dde961a
--- /dev/null
@@ -0,0 +1,130 @@
+
+PASS CSS Transitions: property <min-width> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions: property <min-width> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions: property <min-width> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions: property <min-width> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions: property <min-width> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-width> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Transitions with transition: all: property <min-width> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Transitions with transition: all: property <min-width> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <min-width> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Transitions with transition: all: property <min-width> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Transitions with transition: all: property <min-width> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from neutral to [20px] at (1.5) should be [25px] 
+PASS CSS Animations: property <min-width> from neutral to [20px] at (-0.5) should be [5px] 
+PASS CSS Animations: property <min-width> from neutral to [20px] at (0) should be [10px] 
+PASS CSS Animations: property <min-width> from neutral to [20px] at (0.3) should be [13px] 
+PASS CSS Animations: property <min-width> from neutral to [20px] at (0.6) should be [16px] 
+PASS CSS Animations: property <min-width> from neutral to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <min-width> from neutral to [20px] at (1.5) should be [25px] 
+PASS Web Animations: property <min-width> from neutral to [20px] at (-0.5) should be [5px] 
+FAIL Web Animations: property <min-width> from neutral to [20px] at (0) should be [10px] assert_equals: expected "10px " but got "5px "
+FAIL Web Animations: property <min-width> from neutral to [20px] at (0.3) should be [13px] assert_equals: expected "13px " but got "9.5px "
+FAIL Web Animations: property <min-width> from neutral to [20px] at (0.6) should be [16px] assert_equals: expected "16px " but got "15.8px "
+PASS Web Animations: property <min-width> from neutral to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <min-width> from neutral to [20px] at (1.5) should be [25px] assert_equals: expected "25px " but got "20px "
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-width> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (-0.3) should be [initial] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (0) should be [initial] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (0.3) should be [initial] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <min-width> from [initial] to [20px] at (1.5) should be [20px] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (-0.3) should be [initial] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (0) should be [initial] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (0.3) should be [initial] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <min-width> from [initial] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions: property <min-width> from [inherit] to [20px] at (-0.5) should be [35px] 
+PASS CSS Transitions: property <min-width> from [inherit] to [20px] at (0) should be [30px] 
+PASS CSS Transitions: property <min-width> from [inherit] to [20px] at (0.3) should be [27px] 
+PASS CSS Transitions: property <min-width> from [inherit] to [20px] at (0.6) should be [24px] 
+PASS CSS Transitions: property <min-width> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-width> from [inherit] to [20px] at (1.5) should be [15px] 
+PASS CSS Transitions with transition: all: property <min-width> from [inherit] to [20px] at (-0.5) should be [35px] 
+PASS CSS Transitions with transition: all: property <min-width> from [inherit] to [20px] at (0) should be [30px] 
+PASS CSS Transitions with transition: all: property <min-width> from [inherit] to [20px] at (0.3) should be [27px] 
+PASS CSS Transitions with transition: all: property <min-width> from [inherit] to [20px] at (0.6) should be [24px] 
+PASS CSS Transitions with transition: all: property <min-width> from [inherit] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [inherit] to [20px] at (1.5) should be [15px] 
+FAIL CSS Animations: property <min-width> from [inherit] to [20px] at (-0.5) should be [35px] assert_equals: expected "35px " but got "5px "
+FAIL CSS Animations: property <min-width> from [inherit] to [20px] at (0) should be [30px] assert_equals: expected "30px " but got "10px "
+FAIL CSS Animations: property <min-width> from [inherit] to [20px] at (0.3) should be [27px] assert_equals: expected "27px " but got "13px "
+FAIL CSS Animations: property <min-width> from [inherit] to [20px] at (0.6) should be [24px] assert_equals: expected "24px " but got "16px "
+PASS CSS Animations: property <min-width> from [inherit] to [20px] at (1) should be [20px] 
+FAIL CSS Animations: property <min-width> from [inherit] to [20px] at (1.5) should be [15px] assert_equals: expected "15px " but got "25px "
+FAIL Web Animations: property <min-width> from [inherit] to [20px] at (-0.5) should be [35px] assert_equals: expected "35px " but got "5px "
+FAIL Web Animations: property <min-width> from [inherit] to [20px] at (0) should be [30px] assert_equals: expected "30px " but got "5px "
+FAIL Web Animations: property <min-width> from [inherit] to [20px] at (0.3) should be [27px] assert_equals: expected "27px " but got "9.5px "
+FAIL Web Animations: property <min-width> from [inherit] to [20px] at (0.6) should be [24px] assert_equals: expected "24px " but got "15.8px "
+PASS Web Animations: property <min-width> from [inherit] to [20px] at (1) should be [20px] 
+FAIL Web Animations: property <min-width> from [inherit] to [20px] at (1.5) should be [15px] assert_equals: expected "15px " but got "20px "
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions: property <min-width> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (-0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (0) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (0.3) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Transitions with transition: all: property <min-width> from [unset] to [20px] at (1.5) should be [20px] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (-0.3) should be [unset] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (0) should be [unset] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (0.3) should be [unset] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (1) should be [20px] 
+PASS CSS Animations: property <min-width> from [unset] to [20px] at (1.5) should be [20px] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (-0.3) should be [unset] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (0) should be [unset] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (0.3) should be [unset] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (0.5) should be [20px] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (0.6) should be [20px] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (1) should be [20px] 
+PASS Web Animations: property <min-width> from [unset] to [20px] at (1.5) should be [20px] 
+FAIL CSS Transitions: property <min-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions: property <min-width> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions: property <min-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions: property <min-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions: property <min-width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions: property <min-width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Transitions with transition: all: property <min-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Transitions with transition: all: property <min-width> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Transitions with transition: all: property <min-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions with transition: all: property <min-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions with transition: all: property <min-width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions with transition: all: property <min-width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Animations: property <min-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS CSS Animations: property <min-width> from [0px] to [100px] at (0) should be [0] 
+PASS CSS Animations: property <min-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Animations: property <min-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Animations: property <min-width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Animations: property <min-width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL Web Animations: property <min-width> from [0px] to [100px] at (-0.5) should be [0] assert_equals: expected "0px " but got "- 50px "
+PASS Web Animations: property <min-width> from [0px] to [100px] at (0) should be [0] 
+PASS Web Animations: property <min-width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS Web Animations: property <min-width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS Web Animations: property <min-width> from [0px] to [100px] at (1) should be [100px] 
+PASS Web Animations: property <min-width> from [0px] to [100px] at (1.5) should be [150px] 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation.html
new file mode 100644 (file)
index 0000000..d11fb3d
--- /dev/null
@@ -0,0 +1,79 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>min-width interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-width">
+<meta name="assert" content="min-width supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+  min-width: 30px;
+}
+.target {
+  width: 0px;
+  height: 10px;
+  background-color: black;
+  min-width: 10px;
+}
+.expected {
+  background-color: green;
+}
+</style>
+
+<body></body>
+
+<script>
+test_interpolation({
+  property: 'min-width',
+  from: neutralKeyframe,
+  to: '20px',
+}, [
+  {at: -0.5, expect: '5px'},
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '13px'},
+  {at: 0.6, expect: '16px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '25px'},
+]);
+
+test_no_interpolation({
+  property: 'min-width',
+  from: 'initial',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'min-width',
+  from: 'inherit',
+  to: '20px',
+}, [
+  {at: -0.5, expect: '35px'},
+  {at: 0, expect: '30px'},
+  {at: 0.3, expect: '27px'},
+  {at: 0.6, expect: '24px'},
+  {at: 1, expect: '20px'},
+  {at: 1.5, expect: '15px'},
+]);
+
+test_no_interpolation({
+  property: 'min-width',
+  from: 'unset',
+  to: '20px',
+});
+
+test_interpolation({
+  property: 'min-width',
+  from: '0px',
+  to: '100px'
+}, [
+  {at: -0.5, expect: '0'}, // CSS min-width can't be negative.
+  {at: 0, expect: '0'},
+  {at: 0.3, expect: '30px'},
+  {at: 0.6, expect: '60px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '150px'}
+]);
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/w3c-import.log
new file mode 100644 (file)
index 0000000..5136e7d
--- /dev/null
@@ -0,0 +1,22 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/height-interpolation.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-height-interpolation.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/max-width-interpolation.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-height-interpolation.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/min-width-interpolation.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation-expected.txt
new file mode 100644 (file)
index 0000000..0423a7f
--- /dev/null
@@ -0,0 +1,178 @@
+
+PASS CSS Transitions: property <width> from neutral to [40px] at (-0.3) should be [1px] 
+PASS CSS Transitions: property <width> from neutral to [40px] at (0) should be [10px] 
+PASS CSS Transitions: property <width> from neutral to [40px] at (0.3) should be [19px] 
+PASS CSS Transitions: property <width> from neutral to [40px] at (0.6) should be [28px] 
+PASS CSS Transitions: property <width> from neutral to [40px] at (1) should be [40px] 
+PASS CSS Transitions: property <width> from neutral to [40px] at (1.5) should be [55px] 
+PASS CSS Transitions with transition: all: property <width> from neutral to [40px] at (-0.3) should be [1px] 
+PASS CSS Transitions with transition: all: property <width> from neutral to [40px] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <width> from neutral to [40px] at (0.3) should be [19px] 
+PASS CSS Transitions with transition: all: property <width> from neutral to [40px] at (0.6) should be [28px] 
+PASS CSS Transitions with transition: all: property <width> from neutral to [40px] at (1) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from neutral to [40px] at (1.5) should be [55px] 
+PASS CSS Animations: property <width> from neutral to [40px] at (-0.3) should be [1px] 
+PASS CSS Animations: property <width> from neutral to [40px] at (0) should be [10px] 
+PASS CSS Animations: property <width> from neutral to [40px] at (0.3) should be [19px] 
+PASS CSS Animations: property <width> from neutral to [40px] at (0.6) should be [28px] 
+PASS CSS Animations: property <width> from neutral to [40px] at (1) should be [40px] 
+PASS CSS Animations: property <width> from neutral to [40px] at (1.5) should be [55px] 
+PASS Web Animations: property <width> from neutral to [40px] at (-0.3) should be [1px] 
+FAIL Web Animations: property <width> from neutral to [40px] at (0) should be [10px] assert_equals: expected "10px " but got "1px "
+FAIL Web Animations: property <width> from neutral to [40px] at (0.3) should be [19px] assert_equals: expected "19px " but got "12.69px "
+FAIL Web Animations: property <width> from neutral to [40px] at (0.6) should be [28px] assert_equals: expected "28px " but got "29.08px "
+PASS Web Animations: property <width> from neutral to [40px] at (1) should be [40px] 
+FAIL Web Animations: property <width> from neutral to [40px] at (1.5) should be [55px] assert_equals: expected "55px " but got "40px "
+PASS CSS Transitions: property <width> from [initial] to [40px] at (-0.3) should be [40px] 
+PASS CSS Transitions: property <width> from [initial] to [40px] at (0) should be [40px] 
+PASS CSS Transitions: property <width> from [initial] to [40px] at (0.3) should be [40px] 
+PASS CSS Transitions: property <width> from [initial] to [40px] at (0.5) should be [40px] 
+PASS CSS Transitions: property <width> from [initial] to [40px] at (0.6) should be [40px] 
+PASS CSS Transitions: property <width> from [initial] to [40px] at (1) should be [40px] 
+PASS CSS Transitions: property <width> from [initial] to [40px] at (1.5) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (-0.3) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (0) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (0.3) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (0.5) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (0.6) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (1) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [initial] to [40px] at (1.5) should be [40px] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (-0.3) should be [initial] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (0) should be [initial] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (0.3) should be [initial] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (0.5) should be [40px] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (0.6) should be [40px] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (1) should be [40px] 
+PASS CSS Animations: property <width> from [initial] to [40px] at (1.5) should be [40px] 
+PASS Web Animations: property <width> from [initial] to [40px] at (-0.3) should be [initial] 
+PASS Web Animations: property <width> from [initial] to [40px] at (0) should be [initial] 
+PASS Web Animations: property <width> from [initial] to [40px] at (0.3) should be [initial] 
+PASS Web Animations: property <width> from [initial] to [40px] at (0.5) should be [40px] 
+PASS Web Animations: property <width> from [initial] to [40px] at (0.6) should be [40px] 
+PASS Web Animations: property <width> from [initial] to [40px] at (1) should be [40px] 
+PASS Web Animations: property <width> from [initial] to [40px] at (1.5) should be [40px] 
+PASS CSS Transitions: property <width> from [inherit] to [40px] at (-0.3) should be [118px] 
+PASS CSS Transitions: property <width> from [inherit] to [40px] at (0) should be [100px] 
+PASS CSS Transitions: property <width> from [inherit] to [40px] at (0.3) should be [82px] 
+PASS CSS Transitions: property <width> from [inherit] to [40px] at (0.6) should be [64px] 
+PASS CSS Transitions: property <width> from [inherit] to [40px] at (1) should be [40px] 
+PASS CSS Transitions: property <width> from [inherit] to [40px] at (1.5) should be [10px] 
+PASS CSS Transitions with transition: all: property <width> from [inherit] to [40px] at (-0.3) should be [118px] 
+PASS CSS Transitions with transition: all: property <width> from [inherit] to [40px] at (0) should be [100px] 
+PASS CSS Transitions with transition: all: property <width> from [inherit] to [40px] at (0.3) should be [82px] 
+PASS CSS Transitions with transition: all: property <width> from [inherit] to [40px] at (0.6) should be [64px] 
+PASS CSS Transitions with transition: all: property <width> from [inherit] to [40px] at (1) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [inherit] to [40px] at (1.5) should be [10px] 
+FAIL CSS Animations: property <width> from [inherit] to [40px] at (-0.3) should be [118px] assert_equals: expected "118px " but got "1px "
+FAIL CSS Animations: property <width> from [inherit] to [40px] at (0) should be [100px] assert_equals: expected "100px " but got "10px "
+FAIL CSS Animations: property <width> from [inherit] to [40px] at (0.3) should be [82px] assert_equals: expected "82px " but got "19px "
+FAIL CSS Animations: property <width> from [inherit] to [40px] at (0.6) should be [64px] assert_equals: expected "64px " but got "28px "
+PASS CSS Animations: property <width> from [inherit] to [40px] at (1) should be [40px] 
+FAIL CSS Animations: property <width> from [inherit] to [40px] at (1.5) should be [10px] assert_equals: expected "10px " but got "55px "
+FAIL Web Animations: property <width> from [inherit] to [40px] at (-0.3) should be [118px] assert_equals: expected "118px " but got "1px "
+FAIL Web Animations: property <width> from [inherit] to [40px] at (0) should be [100px] assert_equals: expected "100px " but got "1px "
+FAIL Web Animations: property <width> from [inherit] to [40px] at (0.3) should be [82px] assert_equals: expected "82px " but got "12.69px "
+FAIL Web Animations: property <width> from [inherit] to [40px] at (0.6) should be [64px] assert_equals: expected "64px " but got "29.08px "
+PASS Web Animations: property <width> from [inherit] to [40px] at (1) should be [40px] 
+FAIL Web Animations: property <width> from [inherit] to [40px] at (1.5) should be [10px] assert_equals: expected "10px " but got "40px "
+PASS CSS Transitions: property <width> from [unset] to [40px] at (-0.3) should be [40px] 
+PASS CSS Transitions: property <width> from [unset] to [40px] at (0) should be [40px] 
+PASS CSS Transitions: property <width> from [unset] to [40px] at (0.3) should be [40px] 
+PASS CSS Transitions: property <width> from [unset] to [40px] at (0.5) should be [40px] 
+PASS CSS Transitions: property <width> from [unset] to [40px] at (0.6) should be [40px] 
+PASS CSS Transitions: property <width> from [unset] to [40px] at (1) should be [40px] 
+PASS CSS Transitions: property <width> from [unset] to [40px] at (1.5) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (-0.3) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (0) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (0.3) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (0.5) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (0.6) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (1) should be [40px] 
+PASS CSS Transitions with transition: all: property <width> from [unset] to [40px] at (1.5) should be [40px] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (-0.3) should be [unset] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (0) should be [unset] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (0.3) should be [unset] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (0.5) should be [40px] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (0.6) should be [40px] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (1) should be [40px] 
+PASS CSS Animations: property <width> from [unset] to [40px] at (1.5) should be [40px] 
+PASS Web Animations: property <width> from [unset] to [40px] at (-0.3) should be [unset] 
+PASS Web Animations: property <width> from [unset] to [40px] at (0) should be [unset] 
+PASS Web Animations: property <width> from [unset] to [40px] at (0.3) should be [unset] 
+PASS Web Animations: property <width> from [unset] to [40px] at (0.5) should be [40px] 
+PASS Web Animations: property <width> from [unset] to [40px] at (0.6) should be [40px] 
+PASS Web Animations: property <width> from [unset] to [40px] at (1) should be [40px] 
+PASS Web Animations: property <width> from [unset] to [40px] at (1.5) should be [40px] 
+PASS CSS Transitions: property <width> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS CSS Transitions: property <width> from [0px] to [100px] at (0) should be [0px] 
+PASS CSS Transitions: property <width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions: property <width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions: property <width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions: property <width> from [0px] to [100px] at (1.5) should be [150px] 
+PASS CSS Transitions with transition: all: property <width> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS CSS Transitions with transition: all: property <width> from [0px] to [100px] at (0) should be [0px] 
+PASS CSS Transitions with transition: all: property <width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Transitions with transition: all: property <width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Transitions with transition: all: property <width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Transitions with transition: all: property <width> from [0px] to [100px] at (1.5) should be [150px] 
+PASS CSS Animations: property <width> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS CSS Animations: property <width> from [0px] to [100px] at (0) should be [0px] 
+PASS CSS Animations: property <width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS CSS Animations: property <width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS CSS Animations: property <width> from [0px] to [100px] at (1) should be [100px] 
+PASS CSS Animations: property <width> from [0px] to [100px] at (1.5) should be [150px] 
+PASS Web Animations: property <width> from [0px] to [100px] at (-0.3) should be [0px] 
+PASS Web Animations: property <width> from [0px] to [100px] at (0) should be [0px] 
+PASS Web Animations: property <width> from [0px] to [100px] at (0.3) should be [30px] 
+PASS Web Animations: property <width> from [0px] to [100px] at (0.6) should be [60px] 
+PASS Web Animations: property <width> from [0px] to [100px] at (1) should be [100px] 
+PASS Web Animations: property <width> from [0px] to [100px] at (1.5) should be [150px] 
+FAIL CSS Transitions: property <width> from [10px] to [100%] at (-0.3) should be [0px] assert_equals: expected "0px " but got "10px "
+PASS CSS Transitions: property <width> from [10px] to [100%] at (0) should be [10px] 
+PASS CSS Transitions: property <width> from [10px] to [100%] at (0.3) should be [37px] 
+PASS CSS Transitions: property <width> from [10px] to [100%] at (0.6) should be [64px] 
+PASS CSS Transitions: property <width> from [10px] to [100%] at (1) should be [100px] 
+FAIL CSS Transitions: property <width> from [10px] to [100%] at (1.5) should be [145px] assert_equals: expected "145px " but got "100px "
+FAIL CSS Transitions with transition: all: property <width> from [10px] to [100%] at (-0.3) should be [0px] assert_equals: expected "0px " but got "10px "
+PASS CSS Transitions with transition: all: property <width> from [10px] to [100%] at (0) should be [10px] 
+PASS CSS Transitions with transition: all: property <width> from [10px] to [100%] at (0.3) should be [37px] 
+PASS CSS Transitions with transition: all: property <width> from [10px] to [100%] at (0.6) should be [64px] 
+PASS CSS Transitions with transition: all: property <width> from [10px] to [100%] at (1) should be [100px] 
+FAIL CSS Transitions with transition: all: property <width> from [10px] to [100%] at (1.5) should be [145px] assert_equals: expected "145px " but got "100px "
+FAIL CSS Animations: property <width> from [10px] to [100%] at (-0.3) should be [0px] assert_equals: expected "0px " but got "10px "
+PASS CSS Animations: property <width> from [10px] to [100%] at (0) should be [10px] 
+PASS CSS Animations: property <width> from [10px] to [100%] at (0.3) should be [37px] 
+PASS CSS Animations: property <width> from [10px] to [100%] at (0.6) should be [64px] 
+PASS CSS Animations: property <width> from [10px] to [100%] at (1) should be [100px] 
+FAIL CSS Animations: property <width> from [10px] to [100%] at (1.5) should be [145px] assert_equals: expected "145px " but got "100px "
+FAIL Web Animations: property <width> from [10px] to [100%] at (-0.3) should be [0px] assert_equals: expected "0px " but got "10px "
+PASS Web Animations: property <width> from [10px] to [100%] at (0) should be [10px] 
+PASS Web Animations: property <width> from [10px] to [100%] at (0.3) should be [37px] 
+PASS Web Animations: property <width> from [10px] to [100%] at (0.6) should be [64px] 
+PASS Web Animations: property <width> from [10px] to [100%] at (1) should be [100px] 
+FAIL Web Animations: property <width> from [10px] to [100%] at (1.5) should be [145px] assert_equals: expected "145px " but got "100px "
+PASS CSS Transitions: property <width> from [1em] to [10vw] at (-0.3) should be [0.00px] 
+PASS CSS Transitions: property <width> from [1em] to [10vw] at (0) should be [16.00px] 
+PASS CSS Transitions: property <width> from [1em] to [10vw] at (0.3) should be [35.20px] 
+PASS CSS Transitions: property <width> from [1em] to [10vw] at (0.6) should be [54.40px] 
+PASS CSS Transitions: property <width> from [1em] to [10vw] at (1) should be [80.00px] 
+PASS CSS Transitions: property <width> from [1em] to [10vw] at (1.5) should be [112.00px] 
+PASS CSS Transitions with transition: all: property <width> from [1em] to [10vw] at (-0.3) should be [0.00px] 
+PASS CSS Transitions with transition: all: property <width> from [1em] to [10vw] at (0) should be [16.00px] 
+PASS CSS Transitions with transition: all: property <width> from [1em] to [10vw] at (0.3) should be [35.20px] 
+PASS CSS Transitions with transition: all: property <width> from [1em] to [10vw] at (0.6) should be [54.40px] 
+PASS CSS Transitions with transition: all: property <width> from [1em] to [10vw] at (1) should be [80.00px] 
+PASS CSS Transitions with transition: all: property <width> from [1em] to [10vw] at (1.5) should be [112.00px] 
+PASS CSS Animations: property <width> from [1em] to [10vw] at (-0.3) should be [0.00px] 
+PASS CSS Animations: property <width> from [1em] to [10vw] at (0) should be [16.00px] 
+PASS CSS Animations: property <width> from [1em] to [10vw] at (0.3) should be [35.20px] 
+PASS CSS Animations: property <width> from [1em] to [10vw] at (0.6) should be [54.40px] 
+PASS CSS Animations: property <width> from [1em] to [10vw] at (1) should be [80.00px] 
+PASS CSS Animations: property <width> from [1em] to [10vw] at (1.5) should be [112.00px] 
+PASS Web Animations: property <width> from [1em] to [10vw] at (-0.3) should be [0.00px] 
+PASS Web Animations: property <width> from [1em] to [10vw] at (0) should be [16.00px] 
+PASS Web Animations: property <width> from [1em] to [10vw] at (0.3) should be [35.20px] 
+PASS Web Animations: property <width> from [1em] to [10vw] at (0.6) should be [54.40px] 
+PASS Web Animations: property <width> from [1em] to [10vw] at (1) should be [80.00px] 
+PASS Web Animations: property <width> from [1em] to [10vw] at (1.5) should be [112.00px] 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/animation/width-interpolation.html
new file mode 100644 (file)
index 0000000..d165c99
--- /dev/null
@@ -0,0 +1,127 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>width interpolation</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-width">
+<meta name="assert" content="width supports animation by computed value">
+
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/interpolation-testcommon.js"></script>
+
+<style>
+.parent {
+  width: 100px;
+  overflow: visible;
+}
+.target {
+  font-size: 16px;
+  background-color: black;
+  width: 10px;
+  height: 10px;
+}
+.expected {
+  background-color: green;
+}
+</style>
+
+<body>
+  <template id="target-template">
+    <div class="container">
+      <div class="target"></div>
+    </div>
+  </template>
+</body>
+
+<script>
+test_interpolation({
+  property: 'width',
+  from: neutralKeyframe,
+  to: '40px',
+}, [
+  {at: -0.3, expect: '1px'},
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '19px'},
+  {at: 0.6, expect: '28px'},
+  {at: 1, expect: '40px'},
+  {at: 1.5, expect: '55px'},
+]);
+
+test_no_interpolation({
+  property: 'width',
+  from: 'initial',
+  to: '40px',
+});
+
+test_interpolation({
+  property: 'width',
+  from: 'inherit',
+  to: '40px',
+}, [
+  {at: -0.3, expect: '118px'},
+  {at: 0, expect: '100px'},
+  {at: 0.3, expect: '82px'},
+  {at: 0.6, expect: '64px'},
+  {at: 1, expect: '40px'},
+  {at: 1.5, expect: '10px'},
+]);
+
+test_no_interpolation({
+  property: 'width',
+  from: 'unset',
+  to: '40px',
+});
+
+test_interpolation({
+  property: 'width',
+  from: '0px',
+  to: '100px',
+}, [
+  {at: -0.3, expect: '0px'}, // CSS width can't be negative.
+  {at: 0, expect: '0px'},
+  {at: 0.3, expect: '30px'},
+  {at: 0.6, expect: '60px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '150px'}
+]);
+
+test_interpolation({
+  property: 'width',
+  from: '10px',
+  to: '100%'
+}, [
+  {at: -0.3, expect: '0px'}, // CSS width can't be negative.
+  {at: 0, expect: '10px'},
+  {at: 0.3, expect: '37px'},
+  {at: 0.6, expect: '64px'},
+  {at: 1, expect: '100px'},
+  {at: 1.5, expect: '145px'}
+]);
+
+// The "vw" unit equals to 1% of the width of the viewport's initial containing
+// block:
+// https://developer.mozilla.org/en-US/docs/Web/CSS/length
+function vw(x) {
+    return (x * window.innerWidth / 100);
+}
+
+// In here, 16 is the font-size which is the value of 1em, and vw(10) is the
+// value of 10vw. The calc here takes the "at" in the next interpolation test
+// and computes the expected value.
+function calc(x) {
+    return Math.max(16 + (vw(10) - 16) * x, 0).toFixed(2) + "px";
+}
+
+test_interpolation({
+    property: 'width',
+    from: '1em',
+    to: '10vw'
+}, [
+    {at: -0.3, expect: calc(-0.3)},
+    {at: 0, expect: calc(0)},
+    {at: 0.3, expect: calc(0.3)},
+    {at: 0.6, expect: calc(0.6)},
+    {at: 1, expect: calc(1)},
+    {at: 1.5, expect: calc(1.5)}
+]);
+</script>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt
new file mode 100644 (file)
index 0000000..d72fd01
--- /dev/null
@@ -0,0 +1,16 @@
+There should be a green square below, and no red.
+
+
+
+PASS Changing height should affect the descendant widths, due to aspect ratio 
+FAIL #container 1 assert_equals: 
+<div id="container" style="height: 100px;">
+  <div style="height:100%;" data-expected-height="100">
+    <div style="float:left; height:100%; background:red;" data-expected-width="100" data-expected-height="100">
+      <!-- The image is a 1x1 transparent one. -->
+      <img style="display:block; height:100%; background:green;" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-expected-width="100" data-expected-height="100">
+    </div>
+  </div>
+</div>
+width expected 100 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html
new file mode 100644 (file)
index 0000000..0dbbb2f
--- /dev/null
@@ -0,0 +1,22 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-sizes">
+<p>There should be a green square below, and no red.</p>
+<div id="container" style="height:200px;">
+  <div style="height:100%;" data-expected-height="100">
+    <div style="float:left; height:100%; background:red;" data-expected-width="100" data-expected-height="100">
+      <!-- The image is a 1x1 transparent one. -->
+      <img style="display:block; height:100%; background:green;" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-expected-width="100" data-expected-height="100">
+    </div>
+  </div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script>
+  test(()=> {
+      document.body.offsetTop;
+      document.getElementById("container").style.height = "100px";
+      checkLayout("#container");
+  }, "Changing height should affect the descendant widths, due to aspect ratio");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos-expected.html
new file mode 100644 (file)
index 0000000..076893b
--- /dev/null
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<style>
+  body { overflow:hidden; }
+</style>
+<p>The word PASS should be visible below.</p>
+<div style="position:absolute; height:5em; overflow-y:scroll;">
+  <div style="height:15em;">PASS</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html
new file mode 100644 (file)
index 0000000..9479b2e
--- /dev/null
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#valdef-width-fit-content-length-percentage">
+<link rel="match" href="auto-scrollbar-inside-stf-abspos-ref.html">
+<style>
+  /* Set non-auto overflow on the viewport, so that the UA is more likely to get
+     the size right the first time. Otherwise, a re-layout might hide the bug
+     that we're trying to test. */
+  body { overflow:hidden; }
+</style>
+<p>The word PASS should be visible below.</p>
+<div style="position:absolute;">
+  <div style="height:5em; overflow-y:auto;">
+    <div style="height:15em;">PASS</div>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial-expected.html
new file mode 100644 (file)
index 0000000..7fdc142
--- /dev/null
@@ -0,0 +1,6 @@
+<!DOCTYPE html>
+<body>
+  <div class='parent'>
+    <img class='child' src='../support/60x60-green.png'>
+  </div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial.html
new file mode 100644 (file)
index 0000000..7c9422c
--- /dev/null
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<title>CSS Test: Test `fit-content` for block axis behaves the same as the initial value</title>
+<link rel="match" href="block-fit-content-as-initial-ref.html">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#valdef-width-fit-content-length-percentage">
+<link rel="author" title="Koji Ishii" href="mailto:kojii@chromium.org">
+<style>
+.parent {
+  height: fit-content;
+}
+.child {
+  max-height: 100%;
+}
+</style>
+<body>
+  <div class='parent'>
+    <img class='child' src='../support/60x60-green.png'>
+  </div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline.html
new file mode 100644 (file)
index 0000000..2f6ad68
--- /dev/null
@@ -0,0 +1,11 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#max-size-properties">
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="width:100px; height:100px; background:red;">
+  <span>
+    <!-- The image is a 1x1 transparent one. -->
+    <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" style="display:block; max-width:100px; height:1000px; max-height:100%; background:green;">
+  </span>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt
new file mode 100644 (file)
index 0000000..6acd56e
--- /dev/null
@@ -0,0 +1,13 @@
+Expected: All buttons should be 200px wide
+
+Foo
+Bar
+Foo
+Bar
+Foo
+Bar
+Foo
+Bar
+
+FAIL min-width should force all buttons to be 200px wide assert_equals: expected 200 but got 36
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width.html
new file mode 100644 (file)
index 0000000..d27d0e1
--- /dev/null
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<html>
+<meta charset="utf-8">
+<title>min-width: Should apply to buttons</title>
+<link rel="author" title="Mason Freed" href="mailto:masonfreed@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/CSS2/visudet.html#min-max-widths">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+.button-row {
+  background-color: #BBB;
+  display: flex;
+  flex-direction: row;
+  width: 400px;
+  margin-top: 8px;
+}
+button {
+  flex: 0 0 auto;
+  margin: 0px;
+}
+</style>
+<div>
+  <p>Expected: All buttons should be 200px wide</p>
+</div>
+<div class="button-row">
+    <button style="min-width: 200px">Foo</button>
+    <button style="min-width: 200px">Bar</button>
+</div>
+<div class="button-row">
+    <button style="min-width: 50%">Foo</button>
+    <button style="min-width: 50%">Bar</button>
+</div>
+<div class="button-row" style="writing-mode: vertical-rl; height: 100px;flex-direction:column">
+    <button style="min-width: 200px">Foo</button>
+    <button style="min-width: 200px">Bar</button>
+</div>
+<div class="button-row" style="zoom:2">
+    <button style="min-width: 200px">Foo</button>
+    <button style="min-width: 200px">Bar</button>
+</div>
+<script>
+test(() => {
+  let buttons = document.querySelectorAll("button");
+  for (let button of document.querySelectorAll("button"))
+    assert_equals(button.offsetWidth, 200);
+}, 'min-width should force all buttons to be 200px wide');
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size-expected.html
new file mode 100644 (file)
index 0000000..e5e70f0
--- /dev/null
@@ -0,0 +1,84 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Reference: min/max-content size on box-decoration-break:clone inline box</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: pre;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  -webkit-box-decoration-break: clone;
+  box-decoration-break: clone;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div><span>aaa</span><span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span> <span>aaa</span>
+</div>
+<div><span>aaa </span><span>aaa</span>
+</div>
+<div><span>aaa</span><span> aaa</span>
+</div>
+<div><span>aaa</span> aa<span>aaa</span>
+</div>
+<div><span>aaa </span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span> aaa</span>
+</div>
+<div><span>aaa</span> aa <span>aaa</span>
+</div>
+<div><span>aaa</span>aa <span>aaa</span>
+</div>
+<div><span>aaa</span>aa</div>
+</f>
+
+<f class="min">
+<div><span>aaa</span><span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span><br><span>aaa</span>
+</div>
+<div><span>aaa</span><br><span>aaa</span>
+</div>
+<div><span>aaa</span><span><br>aaa</span>
+</div>
+<div><span>aaa</span><br>aa<span>aaa</span>
+</div>
+<div><span>aaa</span><br>aa<span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span><br>aaa</span>
+</div>
+<div><span>aaa</span><br>aa<br><span>aaa</span>
+</div>
+<div><span>aaa</span>aa<br><span>aaa</span>
+</div>
+<div><span>aaa</span>aa</div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size.html
new file mode 100644 (file)
index 0000000..35c6bd1
--- /dev/null
@@ -0,0 +1,109 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Test: min/max-content size on box-decoration-break:clone inline box</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#valdef-width-min-content">
+  <link rel="help" href="https://drafts.csswg.org/css-break-3/#break-decoration">
+  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1552357">
+  <link rel="match" href="clone-intrinsic-size-ref.html">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  -webkit-box-decoration-break: clone;
+  box-decoration-break: clone;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
+
+<f class="min">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi-expected.html
new file mode 100644 (file)
index 0000000..1c12148
--- /dev/null
@@ -0,0 +1,79 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Reference: min/max-content size on box-decoration-break:clone inline box with bidi text and white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: pre;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  -webkit-box-decoration-break: clone;
+  box-decoration-break: clone;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div><span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa</div>
+</f>
+
+<f class="max">
+<div><span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa</div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html
new file mode 100644 (file)
index 0000000..32601bb
--- /dev/null
@@ -0,0 +1,110 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Test: min/max-content size on box-decoration-break:clone inline box with bidi text and white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#valdef-width-min-content">
+  <link rel="help" href="https://drafts.csswg.org/css-break-3/#break-decoration">
+  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1556709">
+  <link rel="match" href="clone-nowrap-intrinsic-size-bidi-ref.html">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: nowrap;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  -webkit-box-decoration-break: clone;
+  box-decoration-break: clone;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa </div>
+</f>
+
+<f class="min">
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa </div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-expected.html
new file mode 100644 (file)
index 0000000..04dacc6
--- /dev/null
@@ -0,0 +1,79 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Reference: min/max-content size on box-decoration-break:clone inline box w. white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: pre;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  -webkit-box-decoration-break: clone;
+  box-decoration-break: clone;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div><span>aaa</span><span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span> <span>aaa</span>
+</div>
+<div><span>aaa </span><span>aaa</span>
+</div>
+<div><span>aaa</span><span> aaa</span>
+</div>
+<div><span>aaa</span> aa<span>aaa</span>
+</div>
+<div><span>aaa </span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span> aaa</span>
+</div>
+<div><span>aaa</span> aa <span>aaa</span>
+</div>
+<div><span>aaa</span>aa <span>aaa</span>
+</div>
+<div><span>aaa</span>aa</div>
+</f>
+
+<f class="max">
+<div><span>aaa</span><span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span> <span>aaa</span>
+</div>
+<div><span>aaa </span><span>aaa</span>
+</div>
+<div><span>aaa</span><span> aaa</span>
+</div>
+<div><span>aaa</span> aa<span>aaa</span>
+</div>
+<div><span>aaa </span>aa<span>aaa</span>
+</div>
+<div><span>aaa</span>aa<span> aaa</span>
+</div>
+<div><span>aaa</span> aa <span>aaa</span>
+</div>
+<div><span>aaa</span>aa <span>aaa</span>
+</div>
+<div><span>aaa</span>aa</div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size.html
new file mode 100644 (file)
index 0000000..c7bdd08
--- /dev/null
@@ -0,0 +1,110 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Test: min/max-content size on box-decoration-break:clone inline box w. white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#valdef-width-min-content">
+  <link rel="help" href="https://drafts.csswg.org/css-break-3/#break-decoration">
+  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1556709">
+  <link rel="match" href="clone-nowrap-intrinsic-size-ref.html">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: nowrap;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  -webkit-box-decoration-break: clone;
+  box-decoration-break: clone;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
+
+<f class="min">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe.html
new file mode 100644 (file)
index 0000000..fc265d4
--- /dev/null
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<html class=reftest-wait>
+<meta name="assert" content="Checks that an absolute positioned element is positioned correctly, when the available size of its parent changes due to document resize." />
+<link rel="help" href="https://crbug.com/928672">
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<script src="/common/reftest-wait.js"></script>
+<p>Test passes if there is a filled green square.</p>
+<iframe id="target" height="100" width="200" src="support/dynamic-available-size-iframe.html" style="border: none;"></iframe>
+<script>
+onload = () => {
+  requestAnimationFrame(() => requestAnimationFrame(() => {
+    target.width = '100';
+    takeScreenshot();
+  }));
+};
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding-expected.txt
new file mode 100644 (file)
index 0000000..9fa30d9
--- /dev/null
@@ -0,0 +1,5 @@
+
+PASS Initial layout 
+PASS Shrink width 
+PASS Grow width 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding.html
new file mode 100644 (file)
index 0000000..4ff3f78
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/CSS22/box.html#propdef-padding-left">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#valdef-width-fit-content-length-percentage">
+<meta name="assert" content="The shrink-to-fit container (#stf) should be just wide enough to fit both floats beside each other. The percentage padding shouldn't be affected by intrinsic sizing; it's simply resolved from its containing block (#container), which doesn't participate in the intrinsic size calculation at all.">
+<div id="container" style="width:400px; height:200px;">
+  <div id="stf" style="width:fit-content; padding-left:20%;">
+    <div style="float:left; width:50px; height:100px; background:cyan;"></div>
+    <div style="float:left; width:50px; height:100px; background:hotpink;"></div>
+  </div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script>
+  var container = document.getElementById("container");
+  var stf = document.getElementById("stf");
+  test(()=> {
+      assert_equals(stf.offsetWidth, 180);
+  }, "Initial layout");
+
+  test(()=> {
+      container.style.width = "300px";
+      assert_equals(stf.offsetWidth, 160);
+  }, "Shrink width");
+
+  test(()=> {
+      container.style.width = "500px";
+      assert_equals(stf.offsetWidth, 200);
+  }, "Grow width");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001-expected.html
new file mode 100644 (file)
index 0000000..160914c
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    height: 30px;
+    width: 60px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html
new file mode 100644 (file)
index 0000000..7dcf110
--- /dev/null
@@ -0,0 +1,23 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their min-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-001-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 30px;
+    width: 30px;
+    min-width: min-content;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002-expected.html
new file mode 100644 (file)
index 0000000..160914c
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    height: 30px;
+    width: 60px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html
new file mode 100644 (file)
index 0000000..5447092
--- /dev/null
@@ -0,0 +1,23 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their min-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-001-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 30px;
+    width: 30px;
+    min-width: max-content;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003-expected.html
new file mode 100644 (file)
index 0000000..56b71a0
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    height: 80px;
+    width: 60px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html
new file mode 100644 (file)
index 0000000..8da6b4c
--- /dev/null
@@ -0,0 +1,23 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their max-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-003-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 80px;
+    width: 80px;
+    max-width: min-content;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004-expected.html
new file mode 100644 (file)
index 0000000..56b71a0
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    height: 80px;
+    width: 60px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html
new file mode 100644 (file)
index 0000000..b9955af
--- /dev/null
@@ -0,0 +1,23 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their max-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-003-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 80px;
+    width: 80px;
+    max-width: max-content;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005-expected.html
new file mode 100644 (file)
index 0000000..9964f07
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    height: 60px;
+    width: 30px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html
new file mode 100644 (file)
index 0000000..86a2a72
--- /dev/null
@@ -0,0 +1,24 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their min-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-005-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 30px;
+    width: 30px;
+    min-height: min-content;
+    writing-mode: vertical-lr;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006-expected.html
new file mode 100644 (file)
index 0000000..9964f07
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    height: 60px;
+    width: 30px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html
new file mode 100644 (file)
index 0000000..ddb8924
--- /dev/null
@@ -0,0 +1,24 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their min-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-005-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 30px;
+    width: 30px;
+    min-height: max-content;
+    writing-mode: vertical-lr;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007-expected.html
new file mode 100644 (file)
index 0000000..8b9da1c
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    width: 80px;
+    height: 60px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html
new file mode 100644 (file)
index 0000000..150052f
--- /dev/null
@@ -0,0 +1,24 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their max-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-007-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 80px;
+    width: 80px;
+    max-height: min-content;
+    writing-mode: vertical-lr;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008-expected.html
new file mode 100644 (file)
index 0000000..8b9da1c
--- /dev/null
@@ -0,0 +1,12 @@
+<!doctype html>
+<title>CSS Test Reference</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<style>
+  img {
+    border: 1px solid black;
+    width: 80px;
+    height: 60px;
+  }
+</style>
+<img src="/css/support/60x60-green.png">
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html
new file mode 100644 (file)
index 0000000..259e2f3
--- /dev/null
@@ -0,0 +1,24 @@
+<!doctype html>
+<html class="reftest-wait">
+<title>CSS Test: Image size is updated properly when intrinsic size changes, even with a fixed width and height, if their max-size depends on their intrinsic size</title>
+<link rel="author" href="mailto:emilio@crisal.io" title="Emilio Cobos Álvarez">
+<link rel="author" href="https://mozilla.org" title="Mozilla">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#sizing-values">
+<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1546739">
+<link rel="match" href="image-min-max-content-intrinsic-size-change-007-ref.html">
+<style>
+  img {
+    border: 1px solid black;
+    height: 80px;
+    width: 80px;
+    max-height: max-content;
+    writing-mode: vertical-lr;
+  }
+</style>
+<img>
+<script>
+  let img = document.querySelector("img");
+  img.offsetWidth; // Ensure the image is laid out.
+  img.onload = () => document.documentElement.className = "";
+  img.src = "/css/support/60x60-green.png";
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block.html
new file mode 100644 (file)
index 0000000..5b17139
--- /dev/null
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#max-size-properties">
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="width:100px; height:100px; background:red;">
+  <div></div>
+  <!-- The image is a 1x1 transparent one. -->
+  <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" style="max-width:100px; height:1000px; max-height:100%; background:green;">
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001-expected.txt
new file mode 100644 (file)
index 0000000..addfef0
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS Property box-sizing has initial value content-box 
+PASS Property box-sizing does not inherit 
+PASS Property max-height has initial value none 
+PASS Property max-height does not inherit 
+PASS Property max-width has initial value none 
+PASS Property max-width does not inherit 
+PASS Property min-height has initial value auto 
+PASS Property min-height does not inherit 
+PASS Property min-width has initial value auto 
+PASS Property min-width does not inherit 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001.html
new file mode 100644 (file)
index 0000000..2516288
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Inheritance of CSS Intrinsic & Extrinsic Sizing properties</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#property-index">
+<meta name="assert" content="Properties do not inherit.">
+<meta name="assert" content="Properties have initial values according to the spec.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/inheritance-testcommon.js"></script>
+</head>
+<body>
+<div id="container">
+<div id="target"></div>
+</div>
+<style>
+  #container {
+    display: grid;
+  }
+</style>
+<script>
+assert_not_inherited('box-sizing', 'content-box', 'border-box');
+assert_not_inherited('max-height', 'none', '10px');
+assert_not_inherited('max-width', 'none', '10px');
+assert_not_inherited('min-height', 'auto', '10px');
+assert_not_inherited('min-width', 'auto', '10px');
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002-expected.txt
new file mode 100644 (file)
index 0000000..0a64bb6
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS Property height has initial value 0px 
+PASS Property height does not inherit 
+PASS Property width has initial value 0px 
+PASS Property width does not inherit 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002.html
new file mode 100644 (file)
index 0000000..2af768b
--- /dev/null
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Inheritance of CSS Intrinsic & Extrinsic Sizing properties</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#property-index">
+<meta name="assert" content="Properties do not inherit.">
+<meta name="assert" content="Properties have initial values according to the spec.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/inheritance-testcommon.js"></script>
+<style>
+  #target {
+    position: absolute;
+  }
+</style>
+</head>
+<body>
+<div id="container">
+  <div id="target"></div>
+</div>
+<script>
+// Without position absolute, the initial value
+// 'auto' gives the size of the parent element.
+assert_not_inherited('height', '0px', '10px');
+assert_not_inherited('width', '0px', '10px');
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001-expected.html
new file mode 100644 (file)
index 0000000..295decd
--- /dev/null
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<title>Reference</title>
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    color: blue;
+    font: 20px/1 Ahem;
+  }
+  .zero {
+    width: 0;
+  }
+  .infinite {
+    width: 400px; /* close enough */
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+  }
+
+  /* controls for min-width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are larger than content to see if how they take effect */
+  .control {
+    width: 60px;
+  }
+  .raw-percent,
+  .calc-percent {
+    width: 160px;
+    margin-right: -100px;
+  }
+  .no-percent {
+    width: 160px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='zero container'>
+  <div><div class="control">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="raw-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="calc-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="no-percent">ppp pp</div></div>
+</div>
+
+<!-- calculating max-content widths -->
+<div class='infinite container'>
+  <div><div class="control">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="raw-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="calc-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="no-percent">p p</div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001.html
new file mode 100644 (file)
index 0000000..64f2270
--- /dev/null
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<title>Percentages of min-width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
+<link rel="match" href="intrinsic-percent-non-replaced-001-ref.html">
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    color: blue;
+    font: 20px/1 Ahem;
+  }
+  .zero {
+    width: 0;
+  }
+  .infinite {
+    width: 400px; /* close enough */
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+  }
+
+  /* test min-width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are larger than content to see if how they take effect */
+  .raw-percent {
+    min-width: 200%;
+  }
+  .calc-percent {
+    min-width: calc(160px + 0%);
+  }
+  .no-percent {
+    min-width: 160px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='zero container'>
+  <div><div class="control">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="raw-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="calc-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="no-percent">ppp pp</div></div>
+</div>
+
+<!-- calculating max-content widths -->
+<div class='infinite container'>
+  <div><div class="control">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="raw-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="calc-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="no-percent">p p</div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002-expected.html
new file mode 100644 (file)
index 0000000..4997199
--- /dev/null
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<title>Reference</title>
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    color: blue;
+    font: 20px/1 Ahem;
+  }
+  .zero {
+    width: 0;
+  }
+  .infinite {
+    width: 400px; /* close enough */
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left; /* shrinkwrap */
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+  }
+
+  /* controls for width, max-width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are larger than content to see if how they take effect */
+  .control {
+    width: 60px;
+  }
+  .raw-percent,
+  .calc-percent {
+    width: 40px;
+    margin-right: 20px;
+  }
+  .no-percent {
+    width: 40px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='zero container'>
+  <div><div class="control">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="raw-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="calc-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="no-percent">ppp pp</div></div>
+</div>
+
+<!-- calculating max-content widths -->
+<div class='infinite container'>
+  <div><div class="control">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="raw-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="calc-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="no-percent">p p</div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002.html
new file mode 100644 (file)
index 0000000..748aa5f
--- /dev/null
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<title>Percentages of max-width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    color: blue;
+    font: 20px/1 Ahem;
+  }
+  .zero {
+    width: 0;
+  }
+  .infinite {
+    width: 400px; /* close enough */
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left; /* shrinkwrap */
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+  }
+
+  /* test max-width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are smaller than content to see if how they take effect */
+  .raw-percent {
+    max-width: 50%;
+  }
+  .calc-percent {
+    max-width: calc(40px + 0%);
+  }
+  .no-percent {
+    max-width: 40px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='zero container'>
+  <div><div class="control">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="raw-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="calc-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="no-percent">ppp pp</div></div>
+</div>
+
+<!-- calculating max-content widths -->
+<div class='infinite container'>
+  <div><div class="control">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="raw-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="calc-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="no-percent">p p</div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003-expected.html
new file mode 100644 (file)
index 0000000..4997199
--- /dev/null
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<title>Reference</title>
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    color: blue;
+    font: 20px/1 Ahem;
+  }
+  .zero {
+    width: 0;
+  }
+  .infinite {
+    width: 400px; /* close enough */
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left; /* shrinkwrap */
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+  }
+
+  /* controls for width, max-width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are larger than content to see if how they take effect */
+  .control {
+    width: 60px;
+  }
+  .raw-percent,
+  .calc-percent {
+    width: 40px;
+    margin-right: 20px;
+  }
+  .no-percent {
+    width: 40px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='zero container'>
+  <div><div class="control">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="raw-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="calc-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="no-percent">ppp pp</div></div>
+</div>
+
+<!-- calculating max-content widths -->
+<div class='infinite container'>
+  <div><div class="control">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="raw-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="calc-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="no-percent">p p</div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003.html
new file mode 100644 (file)
index 0000000..1dd1a2e
--- /dev/null
@@ -0,0 +1,72 @@
+<!DOCTYPE html>
+<title>Percentages of width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
+<link rel="match" href="intrinsic-percent-non-replaced-002-ref.html">
+
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    color: blue;
+    font: 20px/1 Ahem;
+  }
+  .zero {
+    width: 0;
+  }
+  .infinite {
+    width: 400px; /* close enough */
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+  }
+
+  /* test width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are different than content to see if how they take effect */
+  .raw-percent {
+    width: 50%;
+  }
+  .calc-percent {
+    width: calc(40px + 0%);
+  }
+  .no-percent {
+    width: 40px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='zero container'>
+  <div><div class="control">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="raw-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="calc-percent">ppp pp</div></div>
+</div>
+<div class='zero container'>
+  <div><div class="no-percent">ppp pp</div></div>
+</div>
+
+<!-- calculating max-content widths -->
+<div class='infinite container'>
+  <div><div class="control">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="raw-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="calc-percent">p p</div></div>
+</div>
+<div class='infinite container'>
+  <div><div class="no-percent">p p</div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004-expected.html
new file mode 100644 (file)
index 0000000..aa735cf
--- /dev/null
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<title>Reference</title>
+
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    width: 0;
+  }
+
+  span {
+    display: inline-block;
+    width: 20px;
+    height: 20px;
+    background-color: blue;
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+    writing-mode: vertical-rl;
+    width: 40px;
+    height: 20px;
+  }
+
+  /* controls for min-width */
+  /* content = 100% = 80px = 4ch + border */
+  /* choose sizes that are larger than content to see if how they take effect */
+  .container > div > .raw-percent {
+    width: 120px;
+  }
+  .container > div > .calc-percent,
+  .container > div > .no-percent {
+    width: 160px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='container'>
+  <div><div class="control"><span></span></div></div>
+</div>
+<div class='container'>
+  <div style='width: 60px;'><div class="raw-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div style='width: 60px;'><div class="calc-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="no-percent"><span></span></div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html
new file mode 100644 (file)
index 0000000..6fc061a
--- /dev/null
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<title>Percentages of width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
+<link rel="match" href="intrinsic-percent-non-replaced-004-ref.html">
+
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    width: 0;
+  }
+
+  span {
+    display: inline-block;
+    width: 20px;
+    height: 20px;
+    background-color: blue;
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+    writing-mode: vertical-rl;
+    width: 40px;
+    height: 20px;
+  }
+
+  /* test width */
+  /* content = 100% = 60px = 40px + border */
+  /* choose sizes that are different than content to see if how they take effect */
+  .raw-percent {
+    min-width: 200%;
+  }
+  .calc-percent {
+    min-width: calc(160px + 0%);
+  }
+  .no-percent {
+    min-width: 160px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='container'>
+  <div><div class="control"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="raw-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="calc-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="no-percent"><span></span></div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005-expected.html
new file mode 100644 (file)
index 0000000..38f480c
--- /dev/null
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<title>Reference</title>
+
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    width: 0;
+  }
+
+  span {
+    display: inline-block;
+    width: 20px;
+    height: 20px;
+    background-color: blue;
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+    writing-mode: vertical-rl;
+    width: 80px;
+    height: 20px;
+  }
+
+  /* test width */
+  /* content = 100% = 100px = 80px + border */
+  /* choose sizes that are different than content to see if how they take effect */
+  .container > div > .raw-percent {
+    width: 50px;
+  }
+  .container > div > .calc-percent,
+  .container > div > .no-percent {
+    width: 40px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='container'>
+  <div><div class="control"><span></span></div></div>
+</div>
+<div class='container'>
+  <div style='width: 100px;'><div class="raw-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div style='width: 100px;'><div class="calc-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="no-percent"><span></span></div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html
new file mode 100644 (file)
index 0000000..f105d94
--- /dev/null
@@ -0,0 +1,60 @@
+<!DOCTYPE html>
+<title>Percentages of width on non-replaced blocks are ignored for intrinsic sizing and resolved afterwards</title>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-contribution">
+<link rel="match" href="intrinsic-percent-non-replaced-005-ref.html">
+
+<style>
+  /* establish context */
+  .container {
+    clear: both;
+    padding: 10px;
+    width: 0;
+  }
+
+  span {
+    display: inline-block;
+    width: 20px;
+    height: 20px;
+    background-color: blue;
+  }
+
+  /* visualize size contribution */
+  .container > div {
+    float: left;
+    border: solid orange 20px;
+    border-style: none solid;
+  }
+  .container > div > div {
+    border-right: solid 20px aqua;
+    writing-mode: vertical-rl;
+    width: 80px;
+    height: 20px;
+  }
+
+  /* test width */
+  /* content = 100% = 100px = 80px + border */
+  /* choose sizes that are different than content to see if how they take effect */
+  .raw-percent {
+    max-width: 50%;
+  }
+  .calc-percent {
+    max-width: calc(40px + 0%);
+  }
+  .no-percent {
+    max-width: 40px;
+  }
+</style>
+
+<!-- calculating min-content widths -->
+<div class='container'>
+  <div><div class="control"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="raw-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="calc-percent"><span></span></div></div>
+</div>
+<div class='container'>
+  <div><div class="no-percent"><span></span></div></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001.html
new file mode 100644 (file)
index 0000000..ebb93a2
--- /dev/null
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#intrinsic-sizes">
+<meta name="assert" content="Checks that a replaced element, with an aspect ratio, converts a percent height into an intrinsic width." />
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<style>
+#float { float: left; height: 100px; background: green; }
+canvas { height: 100%; }
+</style>
+<p>Test passes if there is a filled green square.</p>
+<div id=float>
+  <canvas width=10 height=10></canvas>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002.html
new file mode 100644 (file)
index 0000000..05051e6
--- /dev/null
@@ -0,0 +1,14 @@
+<!-- quirks mode -->
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#intrinsic-sizes">
+<meta name="assert" content="Checks that a replaced element, with an aspect ratio, converts a percent height into an intrinsic width." />
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<style>
+#float { float: left; height: 100px; background: green; }
+canvas { height: 100%; }
+</style>
+<p style="margin-top: 1em;">Test passes if there is a filled green square.</p>
+<div id=float>
+  <div>
+    <canvas width=10 height=10></canvas>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003.html
new file mode 100644 (file)
index 0000000..0f130b8
--- /dev/null
@@ -0,0 +1,17 @@
+<!-- quirks mode -->
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#intrinsic-sizes">
+<meta name="assert" content="Checks that a replaced element, with an aspect ratio, converts a percent height into an intrinsic width." />
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<style>
+#container { height: 200px; }
+#float { float: left; height: 50%; background: green; }
+canvas { height: 100%; }
+</style>
+<p style="margin-top: 1em;">Test passes if there is a filled green square.</p>
+<div id=container>
+  <div id=float>
+    <div>
+      <canvas width=10 height=10></canvas>
+    </div>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004.html
new file mode 100644 (file)
index 0000000..1c4002b
--- /dev/null
@@ -0,0 +1,17 @@
+<!-- quirks mode -->
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#intrinsic-sizes">
+<meta name="assert" content="Checks that a replaced element, with an aspect ratio, converts a percent height into an intrinsic width." />
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<style>
+#container { display: flex; height: 200px; }
+#float { float: left; height: 50%; background: green; }
+canvas { height: 100%; }
+</style>
+<p style="margin-top: 1em;">Test passes if there is a filled green square.</p>
+<div id=container>
+  <div id=float>
+    <div>
+      <canvas width=10 height=10></canvas>
+    </div>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005.html
new file mode 100644 (file)
index 0000000..84e945c
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#intrinsic-sizes">
+<meta name="assert" content="Checks that a replaced element, with an aspect ratio, converts a percent height into an intrinsic width." />
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<style>
+#container { position: relative; height: 100px; }
+#abs { position: absolute; top: 0; bottom: 0; background: green; }
+canvas { height: 100%; }
+</style>
+<p>Test passes if there is a filled green square.</p>
+<div id=container>
+  <div id=abs>
+    <canvas width=10 height=10></canvas>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006-expected.html
new file mode 100644 (file)
index 0000000..82fcaa3
--- /dev/null
@@ -0,0 +1,4 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<p>Test passes if there is a filled green square.</p>
+<div style="width:100px; height:100px; background:green;"></div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006.html
new file mode 100644 (file)
index 0000000..bce0a18
--- /dev/null
@@ -0,0 +1,17 @@
+<!-- quirks mode -->
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#intrinsic-sizes">
+<meta name="assert" content="Checks that a replaced element, with an aspect ratio, converts a percent height into an intrinsic width." />
+<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
+<style>
+#container { height: 100px; }
+#float { float: left; background: green; }
+canvas { height: 100%; }
+</style>
+<p style="margin-top: 1em;">Test passes if there is a filled green square.</p>
+<div id=container>
+  <div id=float>
+    <div>
+      <canvas width=10 height=10></canvas>
+    </div>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001-expected.txt
new file mode 100644 (file)
index 0000000..516fcf0
--- /dev/null
@@ -0,0 +1,3 @@
+
+PASS CSS Test: Check computing min-/max-content does not cause crash 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001.html
new file mode 100644 (file)
index 0000000..d2617f8
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<title>CSS Test: Check computing min-/max-content does not cause crash</title>
+<link rel="help" href="https://crbug.com/976859">
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#sizing-values">
+<link rel="author" title="Koji Ishii" href="mailto:kojii@chromium.org">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<style>
+body {
+  width: fit-content;
+}
+#target {
+  display: block;
+  writing-mode: vertical-lr;
+  columns: 2;
+}
+.after #target {
+  float: left;
+}
+</style>
+<body>
+  <div id="target"></div>
+<script>
+test(() => {
+  const body = document.body;
+  body.offsetTop;
+  body.classList.add("after");
+});
+</script>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline.html
new file mode 100644 (file)
index 0000000..fa95069
--- /dev/null
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<title>Shrink-to-fit float inside inline inside a shrink-to-fit-container</title>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<meta name="assert" content="This tests that intrinsic size calculation realizes that the four words are going to fit on the same line in final layout">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-sizes" title="4.1. Intrinsic Sizes">
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht" />
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="float:left; height:100px; background:red;">
+  <span>
+    <div style="float:left; writing-mode:vertical-rl; height:100%; line-height:100px; background:green;">
+      &nbsp; &nbsp; &nbsp; &nbsp;
+    </div>
+  </span>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed-expected.txt
new file mode 100644 (file)
index 0000000..92988c2
--- /dev/null
@@ -0,0 +1,4 @@
+
+PASS Property box-sizing value 'content-box' computes to 'content-box' 
+PASS Property box-sizing value 'border-box' computes to 'border-box' 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed.html
new file mode 100644 (file)
index 0000000..468b9cb
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing: getComputedStyle().boxSizing</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-box-sizing">
+<meta name="assert" content="box-sizing computed value is as specified.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("box-sizing", "content-box");
+test_computed_value("box-sizing", "border-box");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid-expected.txt
new file mode 100644 (file)
index 0000000..b1eae1e
--- /dev/null
@@ -0,0 +1,9 @@
+
+PASS e.style['box-sizing'] = "margin-box" should not set the property value 
+PASS e.style['box-sizing'] = "padding-box" should not set the property value 
+PASS e.style['box-sizing'] = "fill-box" should not set the property value 
+PASS e.style['box-sizing'] = "stroke-box" should not set the property value 
+PASS e.style['box-sizing'] = "view-box" should not set the property value 
+PASS e.style['box-sizing'] = "content-box border-box" should not set the property value 
+PASS e.style['box-sizing'] = "content-box, border-box" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid.html
new file mode 100644 (file)
index 0000000..02d5779
--- /dev/null
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing box-sizing with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-box-sizing">
+<meta name="assert" content="box-sizing supports only the grammar 'content-box | border-box'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("box-sizing", "margin-box");
+test_invalid_value("box-sizing", "padding-box");
+test_invalid_value("box-sizing", "fill-box");
+test_invalid_value("box-sizing", "stroke-box");
+test_invalid_value("box-sizing", "view-box");
+
+test_invalid_value("box-sizing", "content-box border-box");
+test_invalid_value("box-sizing", "content-box, border-box");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid-expected.txt
new file mode 100644 (file)
index 0000000..d7fd2e2
--- /dev/null
@@ -0,0 +1,4 @@
+
+PASS e.style['box-sizing'] = "content-box" should set the property value 
+PASS e.style['box-sizing'] = "border-box" should set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid.html
new file mode 100644 (file)
index 0000000..8f0b809
--- /dev/null
@@ -0,0 +1,18 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing box-sizing with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-box-sizing">
+<meta name="assert" content="box-sizing supports the full grammar 'content-box | border-box'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("box-sizing", "content-box");
+test_valid_value("box-sizing", "border-box");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid-expected.txt
new file mode 100644 (file)
index 0000000..bc1164e
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS e.style['height'] = "none" should not set the property value 
+PASS e.style['height'] = "min-content max-content" should not set the property value 
+PASS e.style['height'] = "-10%" should not set the property value 
+PASS e.style['height'] = "-0.5em" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid.html
new file mode 100644 (file)
index 0000000..14dd0b9
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing height with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-height">
+<meta name="assert" content="height supports only the grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("height", "none");
+test_invalid_value("height", "min-content max-content");
+
+test_invalid_value("height", "-10%");
+test_invalid_value("height", "-0.5em");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid-expected.txt
new file mode 100644 (file)
index 0000000..aa73cb7
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS e.style['height'] = "auto" should set the property value 
+PASS e.style['height'] = "min-content" should set the property value 
+PASS e.style['height'] = "max-content" should set the property value 
+PASS e.style['height'] = "0" should set the property value 
+PASS e.style['height'] = "10%" should set the property value 
+PASS e.style['height'] = "0.5em" should set the property value 
+PASS e.style['height'] = "calc(10% - 0.5em)" should set the property value 
+FAIL e.style['height'] = "fit-content(10%)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['height'] = "fit-content(0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['height'] = "fit-content(10% - 0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid.html
new file mode 100644 (file)
index 0000000..204cd64
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing height with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-height">
+<meta name="assert" content="height supports the full grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("height", "auto");
+test_valid_value("height", "min-content");
+test_valid_value("height", "max-content");
+
+test_valid_value("height", "0", "0px");
+test_valid_value("height", "10%");
+test_valid_value("height", "0.5em");
+test_valid_value("height", "calc(10% - 0.5em)");
+
+test_valid_value("height", "fit-content(10%)");
+test_valid_value("height", "fit-content(0.5em)");
+test_valid_value("height", "fit-content(10% - 0.5em)");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed-expected.txt
new file mode 100644 (file)
index 0000000..bb2b87d
--- /dev/null
@@ -0,0 +1,10 @@
+
+PASS Property max-height value 'none' computes to 'none' 
+PASS Property max-height value 'min-content' computes to 'min-content' 
+PASS Property max-height value 'max-content' computes to 'max-content' 
+PASS Property max-height value '10px' computes to '10px' 
+PASS Property max-height value '20%' computes to '20%' 
+PASS Property max-height value 'calc(10% + 40px)' computes to 'calc(10% + 40px)' 
+PASS Property max-height value 'calc(10px - 0.5em)' computes to '0px' 
+PASS Property max-height value 'calc(10px + 0.5em)' computes to '30px' 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed.html
new file mode 100644 (file)
index 0000000..c4c6703
--- /dev/null
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS basic box model: getComputedStyle().maxHeight</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-height">
+<meta name="assert" content="max-height computed value is as specified, with <length-percentage> values computed">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+<style>
+  #target {
+    font-size: 40px;
+  }
+</style>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("max-height", "none");
+test_computed_value("max-height", "min-content");
+test_computed_value("max-height", "max-content");
+
+test_computed_value("max-height", "10px");
+test_computed_value("max-height", "20%");
+
+test_computed_value('max-height', 'calc(10% + 40px)');
+test_computed_value('max-height', 'calc(10px - 0.5em)', '0px');
+test_computed_value('max-height', 'calc(10px + 0.5em)', '30px');
+
+// fit-content not yet tested
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid-expected.txt
new file mode 100644 (file)
index 0000000..800731d
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS e.style['max-height'] = "auto" should not set the property value 
+PASS e.style['max-height'] = "min-content max-content" should not set the property value 
+PASS e.style['max-height'] = "-10%" should not set the property value 
+PASS e.style['max-height'] = "-0.5em" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid.html
new file mode 100644 (file)
index 0000000..3798bb3
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing max-height with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-height">
+<meta name="assert" content="max-height supports only the grammar 'none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("max-height", "auto");
+test_invalid_value("max-height", "min-content max-content");
+
+test_invalid_value("max-height", "-10%");
+test_invalid_value("max-height", "-0.5em");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid-expected.txt
new file mode 100644 (file)
index 0000000..2eb0c7e
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS e.style['max-height'] = "none" should set the property value 
+PASS e.style['max-height'] = "min-content" should set the property value 
+PASS e.style['max-height'] = "max-content" should set the property value 
+PASS e.style['max-height'] = "0" should set the property value 
+PASS e.style['max-height'] = "10%" should set the property value 
+PASS e.style['max-height'] = "0.5em" should set the property value 
+PASS e.style['max-height'] = "calc(10% - 0.5em)" should set the property value 
+FAIL e.style['max-height'] = "fit-content(10%)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['max-height'] = "fit-content(0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['max-height'] = "fit-content(10% - 0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid.html
new file mode 100644 (file)
index 0000000..3c4aab8
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing max-height with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-height">
+<meta name="assert" content="max-height supports the full grammar 'none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("max-height", "none");
+test_valid_value("max-height", "min-content");
+test_valid_value("max-height", "max-content");
+
+test_valid_value("max-height", "0", "0px");
+test_valid_value("max-height", "10%");
+test_valid_value("max-height", "0.5em");
+test_valid_value("max-height", "calc(10% - 0.5em)");
+
+test_valid_value("max-height", "fit-content(10%)");
+test_valid_value("max-height", "fit-content(0.5em)");
+test_valid_value("max-height", "fit-content(10% - 0.5em)");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed-expected.txt
new file mode 100644 (file)
index 0000000..c03c715
--- /dev/null
@@ -0,0 +1,10 @@
+
+PASS Property max-width value 'none' computes to 'none' 
+PASS Property max-width value 'min-content' computes to 'min-content' 
+PASS Property max-width value 'max-content' computes to 'max-content' 
+PASS Property max-width value '10px' computes to '10px' 
+PASS Property max-width value '20%' computes to '20%' 
+PASS Property max-width value 'calc(10% + 40px)' computes to 'calc(10% + 40px)' 
+PASS Property max-width value 'calc(10px - 0.5em)' computes to '0px' 
+PASS Property max-width value 'calc(10px + 0.5em)' computes to '30px' 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed.html
new file mode 100644 (file)
index 0000000..7e1c0fc
--- /dev/null
@@ -0,0 +1,34 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS basic box model: getComputedStyle().maxWidth</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-width">
+<meta name="assert" content="max-width computed value is as specified, with <length-percentage> values computed">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+<style>
+  #target {
+    font-size: 40px;
+  }
+</style>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("max-width", "none");
+test_computed_value("max-width", "min-content");
+test_computed_value("max-width", "max-content");
+
+test_computed_value("max-width", "10px");
+test_computed_value("max-width", "20%");
+
+test_computed_value('max-width', 'calc(10% + 40px)');
+test_computed_value('max-width', 'calc(10px - 0.5em)', '0px');
+test_computed_value('max-width', 'calc(10px + 0.5em)', '30px');
+
+// fit-content not yet tested
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid-expected.txt
new file mode 100644 (file)
index 0000000..921ee00
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS e.style['max-width'] = "auto" should not set the property value 
+PASS e.style['max-width'] = "min-content max-content" should not set the property value 
+PASS e.style['max-width'] = "-10%" should not set the property value 
+PASS e.style['max-width'] = "-0.5em" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid.html
new file mode 100644 (file)
index 0000000..86e8528
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing max-width with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-width">
+<meta name="assert" content="max-width supports only the grammar 'none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("max-width", "auto");
+test_invalid_value("max-width", "min-content max-content");
+
+test_invalid_value("max-width", "-10%");
+test_invalid_value("max-width", "-0.5em");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid-expected.txt
new file mode 100644 (file)
index 0000000..e25e1bb
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS e.style['max-width'] = "none" should set the property value 
+PASS e.style['max-width'] = "min-content" should set the property value 
+PASS e.style['max-width'] = "max-content" should set the property value 
+PASS e.style['max-width'] = "0" should set the property value 
+PASS e.style['max-width'] = "10%" should set the property value 
+PASS e.style['max-width'] = "0.5em" should set the property value 
+PASS e.style['max-width'] = "calc(10% - 0.5em)" should set the property value 
+FAIL e.style['max-width'] = "fit-content(10%)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['max-width'] = "fit-content(0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['max-width'] = "fit-content(10% - 0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid.html
new file mode 100644 (file)
index 0000000..4788ccf
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing max-width with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-max-width">
+<meta name="assert" content="max-width supports the full grammar 'none | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("max-width", "none");
+test_valid_value("max-width", "min-content");
+test_valid_value("max-width", "max-content");
+
+test_valid_value("max-width", "0", "0px");
+test_valid_value("max-width", "10%");
+test_valid_value("max-width", "0.5em");
+test_valid_value("max-width", "calc(10% - 0.5em)");
+
+test_valid_value("max-width", "fit-content(10%)");
+test_valid_value("max-width", "fit-content(0.5em)");
+test_valid_value("max-width", "fit-content(10% - 0.5em)");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed-expected.txt
new file mode 100644 (file)
index 0000000..8ca18d0
--- /dev/null
@@ -0,0 +1,9 @@
+
+PASS Property min-height value 'min-content' computes to 'min-content' 
+PASS Property min-height value 'max-content' computes to 'max-content' 
+PASS Property min-height value '10px' computes to '10px' 
+PASS Property min-height value '20%' computes to '20%' 
+PASS Property min-height value 'calc(10% + 40px)' computes to 'calc(10% + 40px)' 
+PASS Property min-height value 'calc(10px - 0.5em)' computes to '0px' 
+PASS Property min-height value 'calc(10px + 0.5em)' computes to '30px' 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed.html
new file mode 100644 (file)
index 0000000..c15ee9d
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS basic box model: getComputedStyle().minHeight</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-height">
+<meta name="assert" content="min-height computed value is as specified, with <length-percentage> values computed">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+<style>
+  #target {
+    font-size: 40px;
+  }
+</style>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("min-height", "min-content");
+test_computed_value("min-height", "max-content");
+
+test_computed_value("min-height", "10px");
+test_computed_value("min-height", "20%");
+
+test_computed_value('min-height', 'calc(10% + 40px)');
+test_computed_value('min-height', 'calc(10px - 0.5em)', '0px');
+test_computed_value('min-height', 'calc(10px + 0.5em)', '30px');
+
+// fit-content not yet tested
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid-expected.txt
new file mode 100644 (file)
index 0000000..2e16d40
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS e.style['min-height'] = "none" should not set the property value 
+PASS e.style['min-height'] = "min-content max-content" should not set the property value 
+PASS e.style['min-height'] = "-10%" should not set the property value 
+PASS e.style['min-height'] = "-0.5em" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid.html
new file mode 100644 (file)
index 0000000..0bb939b
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing min-height with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-height">
+<meta name="assert" content="min-height supports only the grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("min-height", "none");
+test_invalid_value("min-height", "min-content max-content");
+
+test_invalid_value("min-height", "-10%");
+test_invalid_value("min-height", "-0.5em");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid-expected.txt
new file mode 100644 (file)
index 0000000..0b4519e
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS e.style['min-height'] = "auto" should set the property value 
+PASS e.style['min-height'] = "min-content" should set the property value 
+PASS e.style['min-height'] = "max-content" should set the property value 
+PASS e.style['min-height'] = "0" should set the property value 
+PASS e.style['min-height'] = "10%" should set the property value 
+PASS e.style['min-height'] = "0.5em" should set the property value 
+PASS e.style['min-height'] = "calc(10% - 0.5em)" should set the property value 
+FAIL e.style['min-height'] = "fit-content(10%)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['min-height'] = "fit-content(0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['min-height'] = "fit-content(10% - 0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid.html
new file mode 100644 (file)
index 0000000..debefbe
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing min-height with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-height">
+<meta name="assert" content="min-height supports the full grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("min-height", "auto");
+test_valid_value("min-height", "min-content");
+test_valid_value("min-height", "max-content");
+
+test_valid_value("min-height", "0", "0px");
+test_valid_value("min-height", "10%");
+test_valid_value("min-height", "0.5em");
+test_valid_value("min-height", "calc(10% - 0.5em)");
+
+test_valid_value("min-height", "fit-content(10%)");
+test_valid_value("min-height", "fit-content(0.5em)");
+test_valid_value("min-height", "fit-content(10% - 0.5em)");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed-expected.txt
new file mode 100644 (file)
index 0000000..cab0b07
--- /dev/null
@@ -0,0 +1,9 @@
+
+PASS Property min-width value 'min-content' computes to 'min-content' 
+PASS Property min-width value 'max-content' computes to 'max-content' 
+PASS Property min-width value '10px' computes to '10px' 
+PASS Property min-width value '20%' computes to '20%' 
+PASS Property min-width value 'calc(10% + 40px)' computes to 'calc(10% + 40px)' 
+PASS Property min-width value 'calc(10px - 0.5em)' computes to '0px' 
+PASS Property min-width value 'calc(10px + 0.5em)' computes to '30px' 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed.html
new file mode 100644 (file)
index 0000000..0a69352
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS basic box model: getComputedStyle().minWidth</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-width">
+<meta name="assert" content="min-width computed value is as specified, with <length-percentage> values computed">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/computed-testcommon.js"></script>
+<style>
+  #target {
+    font-size: 40px;
+  }
+</style>
+</head>
+<body>
+<div id="target"></div>
+<script>
+test_computed_value("min-width", "min-content");
+test_computed_value("min-width", "max-content");
+
+test_computed_value("min-width", "10px");
+test_computed_value("min-width", "20%");
+
+test_computed_value('min-width', 'calc(10% + 40px)');
+test_computed_value('min-width', 'calc(10px - 0.5em)', '0px');
+test_computed_value('min-width', 'calc(10px + 0.5em)', '30px');
+
+// fit-content not yet tested
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid-expected.txt
new file mode 100644 (file)
index 0000000..dc9ecfa
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS e.style['min-width'] = "none" should not set the property value 
+PASS e.style['min-width'] = "min-content max-content" should not set the property value 
+PASS e.style['min-width'] = "-10%" should not set the property value 
+PASS e.style['min-width'] = "-0.5em" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid.html
new file mode 100644 (file)
index 0000000..b4e6009
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing min-width with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-width">
+<meta name="assert" content="min-width supports only the grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("min-width", "none");
+test_invalid_value("min-width", "min-content max-content");
+
+test_invalid_value("min-width", "-10%");
+test_invalid_value("min-width", "-0.5em");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid-expected.txt
new file mode 100644 (file)
index 0000000..b65c05e
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS e.style['min-width'] = "auto" should set the property value 
+PASS e.style['min-width'] = "min-content" should set the property value 
+PASS e.style['min-width'] = "max-content" should set the property value 
+PASS e.style['min-width'] = "0" should set the property value 
+PASS e.style['min-width'] = "10%" should set the property value 
+PASS e.style['min-width'] = "0.5em" should set the property value 
+PASS e.style['min-width'] = "calc(10% - 0.5em)" should set the property value 
+FAIL e.style['min-width'] = "fit-content(10%)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['min-width'] = "fit-content(0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['min-width'] = "fit-content(10% - 0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid.html
new file mode 100644 (file)
index 0000000..cbbd19c
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing min-width with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-min-width">
+<meta name="assert" content="min-width supports the full grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("min-width", "auto");
+test_valid_value("min-width", "min-content");
+test_valid_value("min-width", "max-content");
+
+test_valid_value("min-width", "0", "0px");
+test_valid_value("min-width", "10%");
+test_valid_value("min-width", "0.5em");
+test_valid_value("min-width", "calc(10% - 0.5em)");
+
+test_valid_value("min-width", "fit-content(10%)");
+test_valid_value("min-width", "fit-content(0.5em)");
+test_valid_value("min-width", "fit-content(10% - 0.5em)");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/w3c-import.log
new file mode 100644 (file)
index 0000000..a40b95c
--- /dev/null
@@ -0,0 +1,35 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-computed.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/box-sizing-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/height-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-computed.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-height-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-computed.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/max-width-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-computed.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-height-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-computed.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/min-width-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid-expected.txt
new file mode 100644 (file)
index 0000000..3fdc349
--- /dev/null
@@ -0,0 +1,6 @@
+
+PASS e.style['width'] = "none" should not set the property value 
+PASS e.style['width'] = "min-content max-content" should not set the property value 
+PASS e.style['width'] = "-10%" should not set the property value 
+PASS e.style['width'] = "-0.5em" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-invalid.html
new file mode 100644 (file)
index 0000000..6c56d28
--- /dev/null
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing width with invalid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-width">
+<meta name="assert" content="width supports only the grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_invalid_value("width", "none");
+test_invalid_value("width", "min-content max-content");
+
+test_invalid_value("width", "-10%");
+test_invalid_value("width", "-0.5em");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid-expected.txt
new file mode 100644 (file)
index 0000000..9383e25
--- /dev/null
@@ -0,0 +1,12 @@
+
+PASS e.style['width'] = "auto" should set the property value 
+PASS e.style['width'] = "min-content" should set the property value 
+PASS e.style['width'] = "max-content" should set the property value 
+PASS e.style['width'] = "0" should set the property value 
+PASS e.style['width'] = "10%" should set the property value 
+PASS e.style['width'] = "0.5em" should set the property value 
+PASS e.style['width'] = "calc(10% - 0.5em)" should set the property value 
+FAIL e.style['width'] = "fit-content(10%)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['width'] = "fit-content(0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+FAIL e.style['width'] = "fit-content(10% - 0.5em)" should set the property value assert_not_equals: property should be set got disallowed value ""
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/parsing/width-valid.html
new file mode 100644 (file)
index 0000000..f6c5c0a
--- /dev/null
@@ -0,0 +1,28 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Intrinsic & Extrinsic Sizing Test: parsing width with valid values</title>
+<link rel="help" href="https://drafts.csswg.org/css-sizing-3/#propdef-width">
+<meta name="assert" content="width supports the full grammar 'auto | <length-percentage> | min-content | max-content | fit-content(<length-percentage>)'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+test_valid_value("width", "auto");
+test_valid_value("width", "min-content");
+test_valid_value("width", "max-content");
+
+test_valid_value("width", "0", "0px");
+test_valid_value("width", "10%");
+test_valid_value("width", "0.5em");
+test_valid_value("width", "calc(10% - 0.5em)");
+
+test_valid_value("width", "fit-content(10%)");
+test_valid_value("width", "fit-content(0.5em)");
+test_valid_value("width", "fit-content(10% - 0.5em)");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox-expected.txt
new file mode 100644 (file)
index 0000000..73d74a5
--- /dev/null
@@ -0,0 +1,5 @@
+
+
+PASS #target offsetSize matches #container offsetSize 
+FAIL #target offsetSize matches #container offsetSize after resize assert_equals: expected 100 but got 50
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox.html
new file mode 100644 (file)
index 0000000..f5d9d52
--- /dev/null
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<title>Percentage height in flexbox: css-sizing-3</title>
+<link rel="author" title="mailto:atotic@google.com">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#percentage-sizing">
+<link rel="help" href="https://crbug.com/907911">
+<meta name="assert" content="Percentage height resolves correctly inside flexbox.">
+<style>
+#outer {
+  width: 100px;
+  height: 100px;
+  background: red;
+}
+#container {
+  display: inline-flex;
+  height: 50px;
+  background: green;
+}
+#target {
+  height:100%;
+  display:block;
+}
+</style>
+<div id="outer">
+  <div id="container">
+    <img id="target" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7">
+  </div>
+</div>
+<script>
+test(() => {
+  let target = document.querySelector("#target");
+  assert_equals(target.offsetWidth, target.offsetHeight);
+  assert_equals(target.offsetWidth, target.parentNode.offsetWidth);
+  assert_equals(target.offsetHeight, target.parentNode.offsetHeight);
+}, '#target offsetSize matches #container offsetSize' );
+test(() => {
+  document.querySelector("#container").style.height = "100px";
+  let target = document.querySelector("#target");
+  assert_equals(target.offsetWidth, target.offsetHeight);
+  assert_equals(target.offsetWidth, target.parentNode.offsetWidth);
+  assert_equals(target.offsetHeight, target.parentNode.offsetHeight);
+}, '#target offsetSize matches #container offsetSize after resize' );
+
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb-expected.txt
new file mode 100644 (file)
index 0000000..8534985
--- /dev/null
@@ -0,0 +1,8 @@
+Test passes if there is a green square below.
+
+
+
+FAIL img 1 assert_equals: 
+<img id="img" data-expected-height="100" style="width: 100px; height: 100%" src="/css/support/60x60-green.png?0.18592164034137582">
+height expected 100 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html
new file mode 100644 (file)
index 0000000..c63c490
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#preferred-size-properties">
+<p>Test passes if there is a green square below.</p>
+<body onload="checkLayout('img')">
+  <div>
+    <img id="img" data-expected-height="100" style="width: 100px; height: 100%">
+  </div>
+  <script>
+    img.src = "/css/support/60x60-green.png?" + Math.random();
+    img.offsetTop;
+  </script>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width-expected.txt
new file mode 100644 (file)
index 0000000..7d8fda0
--- /dev/null
@@ -0,0 +1,5 @@
+Test passes if there is a filled green square and no red.
+
+
+PASS #container 1 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width.html
new file mode 100644 (file)
index 0000000..11c34ea
--- /dev/null
@@ -0,0 +1,13 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#sizing-values">
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div id="container" data-expected-width="100" style="width:fit-content; min-width:100px; height:100px; background:red;">
+  <div data-expected-width="100" style="width:fit-content; min-width:100%; height:100px; background:green;"></div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script>
+  checkLayout("#container");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1-expected.html
new file mode 100644 (file)
index 0000000..9a68590
--- /dev/null
@@ -0,0 +1,153 @@
+<!DOCTYPE HTML>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+  <meta charset="utf-8">
+  <title>Reference: INPUT type=range percent intrinsic inline-size</title>
+  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1513959">
+  <style>
+html,body {
+  color:black; background-color:white; font:16px/1 monospace;
+}
+
+input { margin: 2px; }
+
+input.i {
+  min-width: 0;
+  background: lime;
+}
+
+input.mi {
+  min-width: 0;
+  max-width: 100%;
+  width: -moz-max-content;
+  width: max-content;
+  background: lime;
+}
+
+.n {
+  -webkit-appearance: none;
+}
+
+div {
+  display: inline-block;
+  border:1px solid;
+}
+
+.grid {
+  display: inline-grid;
+  grid: auto / min-content;
+  place-items: start;
+}
+
+.outerFlex {
+  display: flex;
+  width: 100px;
+  border: 1px solid black;
+}
+.innerFlex {
+  display: grid;
+  border: 1px solid pink;
+}
+.innerFlex > input {
+  min-width: 0;
+  justify-self: stretch;
+  background: yellow;
+  -moz-appearance: none;
+  -webkit-appearance: none;
+}
+
+</style></head><body>
+
+<div style="width:30px"><div style="width:28px">
+  <input type="range" class="i" style="width:14px; margin-right:0">
+</div></div>
+
+<div style="width:200px"><div style="">
+  <input type="range" class="i" style="max-width:50%">
+</div></div>
+
+<div class="grid" style="grid-template-columns:30px">
+  <input type="range" class="i" style="width:15px">
+</div>
+
+<div class="grid" style="grid-template-columns:30px">
+  <input type="range" class="i" style="width:15px">
+</div>
+
+<div class="grid" style="grid-template-columns:30px">
+  <input type="range" class="i min-auto" style="width:15px">
+</div>
+
+<div style="width:30px"><div style="width:28px;">
+  <input type="range" class="i n" style="width:14px; margin-right:0">
+</div></div>
+
+<div class="grid" style="grid-template-columns:30px">
+  <input type="range" class="i n" style="width:15px">
+</div>
+
+<div class="grid" style="grid-template-columns:30px">
+  <input type="range" class="i n" style="width:15px">
+</div>
+
+<div class="grid" style="grid-template-columns:30px">
+  <input type="range" class="i n min-auto" style="width:15px">
+</div>
+
+<br>
+<br>
+
+<div style="width:30px"><div>
+  <input type="range" class="mi">
+</div></div>
+
+<div class="grid">
+  <input type="range" class="mi">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(min-content,30px)">
+  <input type="range" class="mi">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="mi">
+</div>
+
+<div style="width:30px"><div>
+  <input type="range" class="mi n">
+</div></div>
+
+<div style="width:30px"><div style="width:-moz-max-content;width:max-content">
+  <input type="range" class="mi n" style="width:50%">
+</div></div>
+
+<div class="grid">
+  <input type="range" class="mi n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(min-content,30px)">
+  <input type="range" class="mi n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="mi n">
+</div>
+
+<div class="grid" style="width:30px; grid-template-columns:15px">
+  <input type="range" class="mi n min-auto">
+</div>
+
+<br>
+<br>
+
+<div class="outerFlex">
+  <div class="innerFlex">
+    <input type="range">
+  </div>
+  abc
+</div>
+
+</body></html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1.html
new file mode 100644 (file)
index 0000000..018129a
--- /dev/null
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+  <meta charset="utf-8">
+  <title>Test: INPUT type=range percent intrinsic inline-size</title>
+  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1513959">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#percentage-sizing">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#min-content-zero">
+  <link rel="match" href="range-percent-intrinsic-size-1-ref.html">
+  <style>
+html,body {
+  color:black; background-color:white; font:16px/1 monospace;
+}
+
+input { margin: 2px; }
+
+input.i {
+  width: 50%;
+  min-width: -moz-min-content;
+  min-width: min-content;
+  background: lime;
+}
+
+input.mi {
+  max-width: 50%;
+  min-width: -moz-min-content;
+  min-width: min-content;
+  background: lime;
+}
+
+input.i.min-auto, input.mi.min-auto {
+  min-width: auto;
+}
+
+.n {
+  -webkit-appearance: none;
+}
+
+div {
+  display: inline-block;
+  border:1px solid;
+}
+
+.grid {
+  display: inline-grid;
+  grid: auto / min-content;
+  place-items: start;
+}
+
+.outerFlex {
+  display: flex;
+  width: 100px;
+  border: 1px solid black;
+}
+.innerFlex {
+  display: flex;
+  border: 1px solid pink;
+}
+.innerFlex > input {
+  width: 50%;
+  flex: 1;
+  background: yellow;
+  -moz-appearance: none;
+  -webkit-appearance: none;
+}
+
+</style></head><body>
+
+<div style="width:30px"><div>
+  <input type="range" class="i">
+</div></div>
+
+<div style="width:200px"><div>
+  <input type="range" class="i">
+</div></div>
+
+<div class="grid" style="grid-template-columns:minmax(min-content,30px)">
+  <input type="range" class="i">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="i">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="i min-auto">
+</div>
+
+<div style="width:30px"><div>
+  <input type="range" class="i n">
+</div></div>
+
+<div class="grid" style="grid-template-columns:minmax(min-content,30px)">
+  <input type="range" class="i n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="i n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="i n min-auto">
+</div>
+
+<br>
+<br>
+
+<div style="width:30px"><div>
+  <input type="range" class="mi">
+</div></div>
+
+<div class="grid">
+  <input type="range" class="mi">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(min-content,30px)">
+  <input type="range" class="mi">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="mi">
+</div>
+
+<div style="width:30px"><div>
+  <input type="range" class="mi n">
+</div></div>
+
+<div style="width:30px"><div>
+  <input type="range" class="mi n min-auto">
+</div></div>
+
+<div class="grid">
+  <input type="range" class="mi n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(min-content,30px)">
+  <input type="range" class="mi n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="mi n">
+</div>
+
+<div class="grid" style="grid-template-columns:minmax(auto,30px)">
+  <input type="range" class="mi n min-auto">
+</div>
+
+<br>
+<br>
+
+<div class="outerFlex">
+  <div class="innerFlex">
+    <input type="range">
+  </div>
+  abc
+</div>
+
+</body></html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2-expected.html
new file mode 100644 (file)
index 0000000..207b60d
--- /dev/null
@@ -0,0 +1,140 @@
+<!DOCTYPE HTML>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+  <meta charset="utf-8">
+  <title>Reference: INPUT type=range percent intrinsic block-size</title>
+  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1513959">
+  <style>
+html,body {
+  color:black; background-color:white; font:16px/1 monospace;
+}
+
+input { margin: 2px; }
+
+input.b {
+  min-height: 0;
+  background: lime;
+}
+
+input.mb {
+  min-height: 0;
+  max-height: 100%;
+  background: lime;
+}
+
+.n {
+  -webkit-appearance: none;
+}
+
+div {
+  display: inline-block;
+  border:1px solid;
+}
+
+.grid {
+  display: inline-grid;
+  grid: auto / min-content;
+  place-items: start;
+}
+input[orient="vertical"] {
+  -webkit-appearance: slider-vertical;
+  -webkit-appearance: range;
+}
+
+</style></head><body>
+
+<div style="height:30px"><div>
+  <input type="range" class="b" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div style="height:30px"><div>
+  <input type="range" class="b n" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<br>
+<br>
+
+<div style="height:30px"><div>
+  <input type="range" class="mb" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div style="height:30px"><div>
+  <input type="range" class="mb n" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+</body></html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html
new file mode 100644 (file)
index 0000000..e11e295
--- /dev/null
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+  <meta charset="utf-8">
+  <title>Test: INPUT type=range percent intrinsic block-size</title>
+  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1513959">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#percentage-sizing">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#min-content-zero">
+  <link rel="match" href="range-percent-intrinsic-size-2-ref.html">
+  <style>
+html,body {
+  color:black; background-color:white; font:16px/1 monospace;
+}
+
+input { margin: 2px; }
+
+input.b {
+  height: 50%;
+  min-height: -moz-min-content;
+  min-height: min-content;
+  background: lime;
+}
+
+input.mb {
+  max-height: 50%;
+  min-height: -moz-min-content;
+  min-height: min-content;
+  background: lime;
+}
+
+input.b.min-auto, input.mb.min-auto, {
+  min-height: auto;
+}
+
+.n {
+  -webkit-appearance: none;
+}
+
+div {
+  display: inline-block;
+  border:1px solid;
+}
+
+.grid {
+  display: inline-grid;
+  grid: auto / min-content;
+  place-items: start;
+}
+input[orient="vertical"] {
+  -webkit-appearance: slider-vertical;
+  -webkit-appearance: range;
+}
+
+</style></head><body>
+
+<div style="height:30px"><div>
+  <input type="range" class="b" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(min-content,30px) / auto">
+  <input type="range" class="b" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="b" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="b min-auto" orient="vertical">
+</div>
+
+<div style="height:30px"><div>
+  <input type="range" class="b n" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b n" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(min-content,30px) / auto">
+  <input type="range" class="b n" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="b n" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="b n min-auto" orient="vertical">
+</div>
+
+
+<br>
+<br>
+
+<div style="height:30px"><div>
+  <input type="range" class="mb" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="mb" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(min-content,30px) / auto">
+  <input type="range" class="mb" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="mb" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="mb min-auto" orient="vertical">
+</div>
+
+
+<div style="height:30px"><div>
+  <input type="range" class="mb n" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="mb n" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(min-content,30px) / auto">
+  <input type="range" class="mb n" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="mb n" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="mb n min-auto" orient="vertical">
+</div>
+
+
+</body></html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a-expected.html
new file mode 100644 (file)
index 0000000..861d34c
--- /dev/null
@@ -0,0 +1,87 @@
+<!DOCTYPE HTML>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+  <meta charset="utf-8">
+  <title>Reference: INPUT type=range percent intrinsic block-size</title>
+  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1513959">
+  <style>
+html,body {
+  color:black; background-color:white; font:16px/1 monospace;
+}
+
+input { margin: 2px; }
+
+input.b {
+  min-height: 0;
+  background: lime;
+}
+
+input.mb {
+  min-height: 0;
+  max-height: 100%;
+  background: lime;
+}
+
+div {
+  display: inline-block;
+  border:1px solid;
+}
+
+.grid {
+  display: inline-grid;
+  grid: auto / min-content;
+  place-items: start;
+}
+input[orient="vertical"] {
+  -webkit-appearance: slider-vertical;
+  -webkit-appearance: range;
+}
+
+</style></head><body>
+
+<div style="height:30px"><div>
+  <input type="range" class="b" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<br>
+<br>
+
+<div style="height:30px"><div>
+  <input type="range" class="mb" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical" style="height:50%; grid-area:1/1">
+  <input type="range" class="b" orient="vertical" style="visibility:hidden; grid-area:1/1">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+<div class="grid" style="grid: 30px / auto">
+  <input type="range" class="b" orient="vertical" style="height:15px">
+</div>
+
+</body></html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html
new file mode 100644 (file)
index 0000000..f2c2431
--- /dev/null
@@ -0,0 +1,94 @@
+<!DOCTYPE HTML>
+<!--
+     Any copyright is dedicated to the Public Domain.
+     http://creativecommons.org/publicdomain/zero/1.0/
+-->
+<html><head>
+  <meta charset="utf-8">
+  <title>Test: INPUT type=range percent intrinsic block-size</title>
+  <link rel="author" title="Mats Palmgren" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1513959">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#percentage-sizing">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#min-content-zero">
+  <link rel="match" href="range-percent-intrinsic-size-2a-ref.html">
+  <style>
+html,body {
+  color:black; background-color:white; font:16px/1 monospace;
+}
+
+input { margin: 2px; }
+
+input.b {
+  height: 50%;
+  min-height: -moz-min-content;
+  min-height: min-content;
+  background: lime;
+}
+
+input.mb {
+  max-height: 50%;
+  min-height: -moz-min-content;
+  min-height: min-content;
+  background: lime;
+}
+
+input.b.min-auto, input.mb.min-auto, {
+  min-height: auto;
+}
+
+div {
+  display: inline-block;
+  border:1px solid;
+}
+
+.grid {
+  display: inline-grid;
+  grid: auto / min-content;
+  place-items: start;
+}
+input[orient="vertical"] {
+  -webkit-appearance: slider-vertical;
+  -webkit-appearance: range;
+}
+
+</style></head><body>
+
+<div style="height:30px"><div>
+  <input type="range" class="b" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: min-content / auto">
+  <input type="range" class="b" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(min-content,30px) / auto">
+  <input type="range" class="b" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="b" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="b min-auto" orient="vertical">
+</div>
+
+<br>
+<br>
+
+<div style="height:30px"><div>
+  <input type="range" class="mb" orient="vertical">
+</div></div>
+
+<div class="grid" style="grid: minmax(min-content,30px) / auto">
+  <input type="range" class="mb" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="mb" orient="vertical">
+</div>
+
+<div class="grid" style="grid: minmax(auto,30px) / auto">
+  <input type="range" class="mb min-auto" orient="vertical">
+</div>
+
+</body></html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size-expected.html
new file mode 100644 (file)
index 0000000..f550f33
--- /dev/null
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Reference: min/max-content size on box-decoration-break:slice inline box</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: pre;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div><span>aaa</span><span>aaa</span></div>
+<div><span>aaa</span>aa<span>aaa</span></div>
+<div><span>aaa</span> <span>aaa</span></div>
+<div><span>aaa </span><span>aaa</span></div>
+<div><span>aaa</span><span> aaa</span></div>
+<div><span>aaa</span> aa<span>aaa</span></div>
+<div><span>aaa </span>aa<span>aaa</span></div>
+<div><span>aaa</span>aa<span> aaa</span></div>
+<div><span>aaa</span> aa <span>aaa</span></div>
+<div><span>aaa</span>aa <span>aaa</span></div>
+<div><span>aaa</span>aa</div>
+</f>
+
+<f class="min">
+<div><span>aaa</span><span>aaa</span></div>
+<div><span>aaa</span>aa<span>aaa</span></div>
+<div><span>aaa</span><br><span>aaa</span></div>
+<div><span>aaa</span><br><span>aaa</span></div>
+<div><span>aaa</span><span><br>aaa</span></div>
+<div><span>aaa</span><br>aa<span>aaa</span></div>
+<div><span>aaa</span><br>aa<span>aaa</span></div>
+<div><span>aaa</span>aa<span><br>aaa</span></div>
+<div><span>aaa</span><br>aa<br><span>aaa</span></div>
+<div><span>aaa</span>aa<br><span>aaa</span></div>
+<div><span>aaa</span>aa</div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size.html
new file mode 100644 (file)
index 0000000..2ef2a6e
--- /dev/null
@@ -0,0 +1,110 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Test: min/max-content size on box-decoration-break:slice inline box</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#valdef-width-min-content">
+  <link rel="help" href="https://drafts.csswg.org/css-break-3/#break-decoration">
+  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1552357">
+  <link rel="match" href="slice-intrinsic-size-ref.html">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  /* for clarity: */
+  -webkit-box-decoration-break: slice;
+  box-decoration-break: slice;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
+
+<f class="min">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi-expected.html
new file mode 100644 (file)
index 0000000..dae4bc7
--- /dev/null
@@ -0,0 +1,79 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Reference: min/max-content size on box-decoration-break:slice inline box with bidi text and white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: pre;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+}
+
+f { margin-right: 30px; float: left; }
+.l { margin-right:0; border-right-width:0; padding-right:0 }
+.r { margin-left:0; border-left-width:0; padding-left:0 }
+</style>
+<body>
+<f class="max">
+<div><span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa</div>
+</f>
+
+<f class="max">
+<div><span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div><span>&#x202e;a&#x202d;bc</span>aa</div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi.html
new file mode 100644 (file)
index 0000000..1167912
--- /dev/null
@@ -0,0 +1,108 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Test: min/max-content size on box-decoration-break:slice inline box with bidi text and white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#valdef-width-min-content">
+  <link rel="help" href="https://drafts.csswg.org/css-break-3/#break-decoration">
+  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1556709">
+  <link rel="match" href="slice-nowrap-intrinsic-size-bidi-ref.html">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: nowrap;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa </div>
+</f>
+
+<f class="min">
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span><span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span><span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc </span>aa<span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa<span> d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span> aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa <span>d&#x202e;e&#x202d;f</span>
+</div>
+<div>
+  <span>&#x202e;a&#x202d;bc</span>aa </div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-expected.html
new file mode 100644 (file)
index 0000000..34c04e8
--- /dev/null
@@ -0,0 +1,57 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Reference: min/max-content size on box-decoration-break:slice inline box w. white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: pre;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div><span>aaa</span><span>aaa</span></div>
+<div><span>aaa</span>aa<span>aaa</span></div>
+<div><span>aaa</span> <span>aaa</span></div>
+<div><span>aaa </span><span>aaa</span></div>
+<div><span>aaa</span><span> aaa</span></div>
+<div><span>aaa</span> aa<span>aaa</span></div>
+<div><span>aaa </span>aa<span>aaa</span></div>
+<div><span>aaa</span>aa<span> aaa</span></div>
+<div><span>aaa</span> aa <span>aaa</span></div>
+<div><span>aaa</span>aa <span>aaa</span></div>
+<div><span>aaa</span>aa</div>
+</f>
+
+<f class="max">
+<div><span>aaa</span><span>aaa</span></div>
+<div><span>aaa</span>aa<span>aaa</span></div>
+<div><span>aaa</span> <span>aaa</span></div>
+<div><span>aaa </span><span>aaa</span></div>
+<div><span>aaa</span><span> aaa</span></div>
+<div><span>aaa</span> aa<span>aaa</span></div>
+<div><span>aaa </span>aa<span>aaa</span></div>
+<div><span>aaa</span>aa<span> aaa</span></div>
+<div><span>aaa</span> aa <span>aaa</span></div>
+<div><span>aaa</span>aa <span>aaa</span></div>
+<div><span>aaa</span>aa</div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size.html
new file mode 100644 (file)
index 0000000..724a908
--- /dev/null
@@ -0,0 +1,111 @@
+<!DOCTYPE html>
+<head>
+  <title>CSS Test: min/max-content size on box-decoration-break:slice inline box w. white-space:nowrap</title>
+  <link rel="author" title="Mats Palmgren" href="mailto:mats@mozilla.com">
+  <link rel="help" href="https://drafts.csswg.org/css-sizing-3/#valdef-width-min-content">
+  <link rel="help" href="https://drafts.csswg.org/css-break-3/#break-decoration">
+  <link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1556709">
+  <link rel="match" href="slice-nowrap-intrinsic-size-ref.html">
+<style>
+html,body {
+  color:black; background-color:white; font:10px/1 monospace; padding:0; margin:0;
+}
+
+div {
+  border: 5px solid blue;
+  white-space: nowrap;
+}
+.max > div {
+  width: -moz-max-content;
+  width: -webkit-max-content;
+  width: max-content;
+}
+.min > div {
+  width: -moz-min-content;
+  width: -webkit-min-content;
+  width: min-content;
+}
+
+span {
+  border: 2px solid gray;
+  padding: 0 10px 0 6px;
+  border-width: 0 8px 0 5px;
+  margin: 0 4px 0 3px;
+  background: yellow;
+  /* for clarity: */
+  -webkit-box-decoration-break: slice;
+  box-decoration-break: slice;
+}
+
+f { margin-right: 30px; float: left; }
+</style>
+<body>
+<f class="max">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
+
+<f class="min">
+<div>
+  <span>aaa</span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span> <span>aaa</span>
+</div>
+<div>
+  <span>aaa </span><span>aaa</span>
+</div>
+<div>
+  <span>aaa</span><span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa </span>aa<span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa<span> aaa</span>
+</div>
+<div>
+  <span>aaa</span> aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa <span>aaa</span>
+</div>
+<div>
+  <span>aaa</span>aa </div>
+</f>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/dynamic-available-size-iframe.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/dynamic-available-size-iframe.html
new file mode 100644 (file)
index 0000000..8b61c87
--- /dev/null
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<style>
+body { margin: 0; }
+.parent {
+  position: relative;
+  display: flex;
+  width: 100%;
+  height: 100px;
+  background: red;
+}
+
+.content {
+  position: absolute;
+  top: 0;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  margin: auto;
+  width: 100px;
+  height: 100px;
+  background: green;
+}
+
+svg {
+  width: 50px;
+  height: 50px;
+}
+</style>
+<div class="parent">
+  <div class="content">
+    <svg xmlns="http://www.w3.org/2000/svg"></svg>
+  </div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/w3c-import.log
new file mode 100644 (file)
index 0000000..bb804d6
--- /dev/null
@@ -0,0 +1,17 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/support/dynamic-available-size-iframe.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float-expected.txt
new file mode 100644 (file)
index 0000000..a5d31cc
--- /dev/null
@@ -0,0 +1,5 @@
+There should be a green square below, and no red.
+
+
+PASS #container 1 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float.html
new file mode 100644 (file)
index 0000000..be82ac0
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#available">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#percentage-sizing">
+<p>There should be a green square below, and no red.</p>
+<div id="container" style="width:100px; background:red;">
+  <div style="float:right; width:50px; height:100px; background:green;"></div>
+  <div style="display:table; max-width:50%; height:100px; background:green;" data-expected-width="50">
+    <div style="float:left; width:20px; height:10px;"></div>
+    <div style="float:left; width:20px; height:10px;"></div>
+    <div style="float:left; width:20px; height:10px;"></div>
+  </div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script>
+  checkLayout("#container");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float-expected.txt
new file mode 100644 (file)
index 0000000..c91d675
--- /dev/null
@@ -0,0 +1,5 @@
+There should be a blue square below.
+
+
+PASS #container 1 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float.html
new file mode 100644 (file)
index 0000000..400a87d
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#available">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#percentage-sizing">
+<p>There should be a blue square below.</p>
+<div id="container" style="width:100px;">
+  <div style="float:right; width:50px; height:10px;"></div>
+  <div style="display:table; width:10px; min-width:100%; height:100px; background:blue;" data-expected-width="100"></div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script>
+  checkLayout("#container");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float-expected.txt
new file mode 100644 (file)
index 0000000..a5d31cc
--- /dev/null
@@ -0,0 +1,5 @@
+There should be a green square below, and no red.
+
+
+PASS #container 1 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float.html
new file mode 100644 (file)
index 0000000..d763c92
--- /dev/null
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#available">
+<link rel="help" href="https://drafts.csswg.org/css-sizing/#percentage-sizing">
+<p>There should be a green square below, and no red.</p>
+<div id="container" style="width:100px; background:red;">
+  <div style="float:right; width:50px; height:100px; background:green;"></div>
+  <div style="display:table; width:10px; min-width:50%; height:100px; background:green;" data-expected-width="50"></div>
+</div>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script>
+  checkLayout("#container");
+</script>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/w3c-import.log
new file mode 100644 (file)
index 0000000..3e57721
--- /dev/null
@@ -0,0 +1,99 @@
+The tests in this directory were imported from the W3C repository.
+Do NOT modify these tests directly in WebKit.
+Instead, create a pull request on the WPT github:
+       https://github.com/web-platform-tests/wpt
+
+Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
+
+Do NOT modify or remove this file.
+
+------------------------------------------------------------------------
+Properties requiring vendor prefixes:
+None
+Property values requiring vendor prefixes:
+None
+------------------------------------------------------------------------
+List of files:
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/META.yml
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/auto-scrollbar-inside-stf-abspos.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-fit-content-as-initial.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/block-image-percentage-max-height-inside-inline.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/button-min-width.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-intrinsic-size.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-bidi.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/clone-nowrap-intrinsic-size.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/dynamic-available-size-iframe.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/fit-content-percentage-padding.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-003.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-004.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-005.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-006.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-007.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-min-max-content-intrinsic-size-change-008.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/image-percentage-max-height-in-anonymous-block.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/inheritance-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-003.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-004.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-non-replaced-005.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-003.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-004.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-005.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/intrinsic-percent-replaced-006.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/min-max-content-orthogonal-flow-crash-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/orthogonal-writing-mode-float-in-inline.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-in-flexbox.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-height-replaced-content-in-auto-cb.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/percentage-min-width.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-1.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/range-percent-intrinsic-size-2a.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-intrinsic-size.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-bidi.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/slice-nowrap-intrinsic-size.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-max-width-beside-float.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-below-float.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/table-percentage-min-width-beside-float.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break-expected.xht b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break-expected.xht
new file mode 100644 (file)
index 0000000..05a1379
--- /dev/null
@@ -0,0 +1,19 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+  <title>CSS Reftest Reference</title>
+  <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/" />
+  <style type="text/css"><![CDATA[
+  div
+  {
+  background-color: green;
+  height: 100px;
+  width: 100px;
+  }
+  ]]></style>
+ </head>
+ <body>
+  <p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+  <div></div>
+ </body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-sizing/whitespace-and-break.html
new file mode 100644 (file)
index 0000000..f3ea376
--- /dev/null
@@ -0,0 +1,10 @@
+<!DOCTYPE html>
+<title>Collapsable whitespace and break after inline-block</title>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<link rel="help" href="https://www.w3.org/TR/css-sizing-3/#intrinsic-sizes" title="4.1. Intrinsic Sizes">
+<link rel="match" href="../reference/ref-filled-green-100px-square.xht" />
+<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
+<div style="width:fit-content; background:red;">
+  <div style="display:inline-block; vertical-align:top; width:100px; height:100px; background:green;"></div>
+  <br>
+</div>
index ada0713..9dd02ab 100644 (file)
@@ -3403,4 +3403,4 @@ webkit.org/b/203305 imported/w3c/web-platform-tests/css/css-transitions/properti
 webkit.org/b/203305 [ Debug ] imported/w3c/web-platform-tests/css/css-transitions/properties-value-inherit-001.html [ Pass Failure ]
 webkit.org/b/203356 [ Debug ] imported/w3c/web-platform-tests/css/css-transitions/properties-value-003.html [ Pass Failure ]
 webkit.org/b/203416 imported/w3c/web-platform-tests/css/css-transitions/before-load-001.html [ Pass Failure ]
-webkit.org/b/203416 imported/w3c/web-platform-tests/css/css-transitions/properties-value-auto-001.html [ Pass Failure ]
\ No newline at end of file
+webkit.org/b/203416 imported/w3c/web-platform-tests/css/css-transitions/properties-value-auto-001.html [ Pass Failure ]
diff --git a/LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt b/LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio-affects-container-width-when-height-changes-expected.txt
new file mode 100644 (file)
index 0000000..0252ab3
--- /dev/null
@@ -0,0 +1,7 @@
+There should be a green square below, and no red.
+
+
+
+PASS Changing height should affect the descendant widths, due to aspect ratio 
+PASS #container 1 
+
diff --git a/LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt b/LayoutTests/platform/ios/imported/w3c/web-platform-tests/css/css-sizing/button-min-width-expected.txt
new file mode 100644 (file)
index 0000000..d4bd01d
--- /dev/null
@@ -0,0 +1,13 @@
+Expected: All buttons should be 200px wide
+
+Foo
+Bar
+Foo
+Bar
+Foo
+Bar
+Foo
+Bar
+
+PASS min-width should force all buttons to be 200px wide 
+