[css-grid] Import additional grid layout test from the WPT suite
authorjfernandez@igalia.com <jfernandez@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 11 Nov 2018 22:22:33 +0000 (22:22 +0000)
committerjfernandez@igalia.com <jfernandez@igalia.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 11 Nov 2018 22:22:33 +0000 (22:22 +0000)
https://bugs.webkit.org/show_bug.cgi?id=191369

Reviewed by Manuel Rego Casasnovas.

New Grid Layout tests from the WPT suite.

LayoutTests/imported/w3c:

* resources/import-expectations.json:
* web-platform-tests/css/css-grid/META.yml: Added.
* web-platform-tests/css/css-grid/OWNERS: Removed.
* web-platform-tests/css/css-grid/abspos/support/grid.css:
(.thirdRowThirdColumn):
* web-platform-tests/css/css-grid/abspos/support/w3c-import.log:
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html: Added.
* web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt:
* web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html:
* web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002-expected.txt:
* web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html:
* web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html: Added.
* web-platform-tests/css/css-grid/alignment/self-baseline/w3c-import.log:
* web-platform-tests/css/css-grid/alignment/support/style-change.js:
(evaluateStyleChangeMultiple):
* web-platform-tests/css/css-grid/alignment/support/w3c-import.log:
* web-platform-tests/css/css-grid/alignment/test-expected.txt: Added.
* web-platform-tests/css/css-grid/alignment/w3c-import.log:
* web-platform-tests/css/css-grid/grid-definition/support/grid.css:
(.thirdRowThirdColumn):
* web-platform-tests/css/css-grid/grid-definition/support/w3c-import.log:
* web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html: Added.
* web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001-expected.txt: Added.
* web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html: Added.
* web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt: Added.
* web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html: Added.
* web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-expected.html: Added.
* web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html: Added.
* web-platform-tests/css/css-grid/grid-items/support/grid.css:
(.thirdRowThirdColumn):
* web-platform-tests/css/css-grid/grid-items/support/w3c-import.log:
* web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html: Added.
* web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html: Added.
* web-platform-tests/css/css-grid/grid-items/w3c-import.log:
* web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html: Added.
* web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html: Added.
* web-platform-tests/css/css-grid/grid-model/support/grid.css:
(.thirdRowThirdColumn):
* web-platform-tests/css/css-grid/grid-model/support/w3c-import.log:
* web-platform-tests/css/css-grid/grid-model/w3c-import.log:
* web-platform-tests/css/css-grid/implicit-grids/w3c-import.log:
* web-platform-tests/css/css-grid/inheritance-expected.txt: Added.
* web-platform-tests/css/css-grid/inheritance.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html: Added.
* web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:
* web-platform-tests/css/css-grid/parsing/grid-area-invalid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-area-invalid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-area-valid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-area-valid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html: Added.
* web-platform-tests/css/css-grid/parsing/grid-template-areas-valid-expected.txt: Added.
* web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html: Added.
* web-platform-tests/css/css-grid/parsing/w3c-import.log: Added.
* web-platform-tests/css/css-grid/placement/w3c-import.log:
* web-platform-tests/css/css-grid/test-plan/w3c-import.log:
* web-platform-tests/css/css-grid/w3c-import.log:
* web-platform-tests/css/support/META.yml: Added.
* web-platform-tests/css/support/OWNERS: Removed.
* web-platform-tests/css/support/computed-testcommon.js: Added.
(test_computed_value):
* web-platform-tests/css/support/grid.css:
(.thirdRowThirdColumn):
* web-platform-tests/css/support/inheritance-testcommon.js: Added.
(assert_initial):
* web-platform-tests/css/support/parsing-testcommon.js: Added.
(test_valid_value):
* web-platform-tests/css/support/support/w3c-import.log:
* web-platform-tests/css/support/w3c-import.log:

LayoutTests:

* TestExpectations: Added bugs and ImageOnlyFailure for 3 tests that are failing.

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

101 files changed:
LayoutTests/ChangeLog
LayoutTests/TestExpectations
LayoutTests/fast/css-grid-layout/flex-item-grid-container-percentage-rows-expected.html [new file with mode: 0644]
LayoutTests/fast/css-grid-layout/flex-item-grid-container-percentage-rows.html [new file with mode: 0644]
LayoutTests/imported/w3c/ChangeLog
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/META.yml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/OWNERS [deleted file]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/abspos/support/grid.css
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/abspos/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002-expected.txt
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/support/style-change.js
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/test-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-definition/support/grid.css
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-definition/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/support/grid.css
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/support/grid.css
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/implicit-grids/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid-expected.txt [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/w3c-import.log [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/placement/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/test-plan/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/css-grid/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/support/META.yml [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/support/OWNERS [deleted file]
LayoutTests/imported/w3c/web-platform-tests/css/support/computed-testcommon.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/support/grid.css
LayoutTests/imported/w3c/web-platform-tests/css/support/inheritance-testcommon.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/support/parsing-testcommon.js [new file with mode: 0644]
LayoutTests/imported/w3c/web-platform-tests/css/support/support/w3c-import.log
LayoutTests/imported/w3c/web-platform-tests/css/support/w3c-import.log
LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt [new file with mode: 0644]
LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt [deleted file]

index 1838bb3..1442ed2 100644 (file)
@@ -1,3 +1,14 @@
+2018-11-11  Javier Fernandez  <jfernandez@igalia.com>
+
+        [css-grid] Import additional grid layout test from the WPT suite
+        https://bugs.webkit.org/show_bug.cgi?id=191369
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        New Grid Layout tests from the WPT suite.
+
+        * TestExpectations: Added bugs and ImageOnlyFailure for 3 tests that are failing.
+
 2018-11-11  Daniel Bates  <dabates@apple.com>
 
         [iOS] Draw caps lock indicator in password fields
index 3639447..dfbe5c5 100644 (file)
@@ -326,18 +326,6 @@ webkit.org/b/179608 imported/w3c/web-platform-tests/xhr/access-control-preflight
 webkit.org/b/179608 imported/w3c/web-platform-tests/xhr/access-control-preflight-sync-not-supported.htm [ Failure ]
 webkit.org/b/179608 imported/w3c/web-platform-tests/xhr/send-conditional-cors.htm [ Failure ]
 webkit.org/b/179611 imported/w3c/web-platform-tests/xhr/send-entity-body-document.htm [ Pass Failure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-001.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-002.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-003.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-004.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-005.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-006.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-007.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-008.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-009.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-010.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-011.html [ ImageOnlyFailure ]
-webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-012.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/IndexedDB/nested-cloning-large-multiple.html [ Skip ]
 imported/w3c/web-platform-tests/IndexedDB/nested-cloning-large.html [ Skip ]
 imported/w3c/web-platform-tests/IndexedDB/nested-cloning-small.html [ Skip ]
@@ -600,8 +588,27 @@ webkit.org/b/136754 css3/flexbox/csswg/ttwf-reftest-flex-wrap.html [ ImageOnlyFa
 webkit.org/b/165062 fast/css-grid-layout/grid-baseline.html [ ImageOnlyFailure ]
 webkit.org/b/165062 fast/css-grid-layout/grid-baseline-margins.html [ ImageOnlyFailure ]
 webkit.org/b/169271 imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-sizing-alignment-001.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/abspos/absolute-positioning-changing-containing-block-001.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/abspos/grid-item-absolute-positioning-dynamic-001.html [ ImageOnlyFailure ]
+webkit.org/b/191465 imported/w3c/web-platform-tests/css/css-grid/abspos/absolute-positioning-changing-containing-block-001.html [ ImageOnlyFailure ]
+webkit.org/b/191465 imported/w3c/web-platform-tests/css/css-grid/abspos/grid-item-absolute-positioning-dynamic-001.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-001.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-002.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-003.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-004.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-005.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-006.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-007.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-008.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-009.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-010.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-011.html [ ImageOnlyFailure ]
+webkit.org/b/145566 imported/w3c/web-platform-tests/css/css-grid/alignment/self-baseline/grid-self-baseline-changes-grid-area-size-012.html [ ImageOnlyFailure ]
+webkit.org/b/191365 imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html [ ImageOnlyFailure ]
+webkit.org/b/191365 imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html [ ImageOnlyFailure ]
+webkit.org/b/191367 imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html [ ImageOnlyFailure ]
+webkit.org/b/191460 imported/w3c/web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html [ Skip ]
+webkit.org/b/191461 imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html [ ImageOnlyFailure ]
+webkit.org/b/191462 imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-replaced-subitems-001.html [ ImageOnlyFailure ]
+webkit.org/b/191463 imported/w3c/web-platform-tests/css/css-grid/grid-items/explicitly-sized-grid-item-as-table.html
 
 # Flaky tests at import time
 imported/w3c/web-platform-tests/css/css-scoping/css-scoping-shadow-host-namespace.html [ ImageOnlyFailure ]
@@ -2745,7 +2752,6 @@ imported/w3c/web-platform-tests/css/css-display/run-in/run-in-relpos-between-003
 imported/w3c/web-platform-tests/css/css-display/display-contents-svg-elements.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-float-between-002.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-text-decor/text-emphasis-style-002.html [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-contains-inline-002.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-text-decor/text-emphasis-position-below-right-001.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-text-decor/text-emphasis-style-string-001.xht [ ImageOnlyFailure ]
@@ -2755,7 +2761,6 @@ imported/w3c/web-platform-tests/css/css-shapes/shape-outside/shape-image/gradien
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-run-in-between-007.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-text-decor/text-emphasis-style-007.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-basic-007.xht [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-replaced-subitems-001.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-text-decor/text-emphasis-position-above-right-002.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-contains-abspos-001.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-multicol/zero-column-width-layout.html [ ImageOnlyFailure ]
@@ -2798,7 +2803,6 @@ imported/w3c/web-platform-tests/css/css-display/run-in/run-in-restyle-003.xht [
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-contains-table-column-group-001.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-fixedpos-between-002.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-run-in-between-004.xht [ ImageOnlyFailure ]
-imported/w3c/web-platform-tests/css/css-grid/grid-items/explicitly-sized-grid-item-as-table.html [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-text-decor/text-emphasis-position-above-left-001.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-listitem-between-003.xht [ ImageOnlyFailure ]
 imported/w3c/web-platform-tests/css/css-display/run-in/run-in-basic-010.xht [ ImageOnlyFailure ]
diff --git a/LayoutTests/fast/css-grid-layout/flex-item-grid-container-percentage-rows-expected.html b/LayoutTests/fast/css-grid-layout/flex-item-grid-container-percentage-rows-expected.html
new file mode 100644 (file)
index 0000000..381c3ad
--- /dev/null
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<style>
+
+.wrapper {
+    width: 200px;
+    border: 5px solid;
+}
+
+.wrapper > div {
+    height: 100px;
+}
+
+.magenta {
+    background: magenta;
+}
+
+.cyan {
+    background: cyan;
+}
+
+</style>
+
+<p>This test checks that percentage rows are properly resolved for a grid container that is a flex item with a definite height.</p>
+<p>Test passes if you see a 200x200 box with top half cyan and bottom half magenta.</p>
+
+<div class="wrapper">
+    <div class="cyan"></div>
+    <div class="magenta"></div>
+</div>
diff --git a/LayoutTests/fast/css-grid-layout/flex-item-grid-container-percentage-rows.html b/LayoutTests/fast/css-grid-layout/flex-item-grid-container-percentage-rows.html
new file mode 100644 (file)
index 0000000..906913d
--- /dev/null
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<link href="resources/grid.css" rel="stylesheet">
+<style>
+
+.flex {
+    display: flex;
+    flex-direction: column;
+    width: 200px;
+    height: 200px;
+    border: 5px solid;
+}
+
+.flexitem {
+    flex: 1;
+    background: magenta;
+}
+
+.grid {
+    display: grid;
+    grid: 50% / 1fr;
+}
+
+.griditem {
+    background: cyan;
+}
+
+</style>
+
+<p>This test checks that percentage rows are properly resolved for a grid container that is a flex item with a definite height.</p>
+<p>Test passes if you see a 200x200 box with top half cyan and bottom half magenta.</p>
+
+<div class="flex">
+    <div class="flexitem grid">
+        <div class="griditem"></div>
+    </div>
+</div>
index afe71f6..447f1c3 100644 (file)
@@ -1,3 +1,118 @@
+2018-11-11  Javier Fernandez  <jfernandez@igalia.com>
+
+        [css-grid] Import additional grid layout test from the WPT suite
+        https://bugs.webkit.org/show_bug.cgi?id=191369
+
+        Reviewed by Manuel Rego Casasnovas.
+
+        New Grid Layout tests from the WPT suite.
+
+        * resources/import-expectations.json:
+        * web-platform-tests/css/css-grid/META.yml: Added.
+        * web-platform-tests/css/css-grid/OWNERS: Removed.
+        * web-platform-tests/css/css-grid/abspos/support/grid.css:
+        (.thirdRowThirdColumn):
+        * web-platform-tests/css/css-grid/abspos/support/w3c-import.log:
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt:
+        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html:
+        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002-expected.txt:
+        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html:
+        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html: Added.
+        * web-platform-tests/css/css-grid/alignment/self-baseline/w3c-import.log:
+        * web-platform-tests/css/css-grid/alignment/support/style-change.js:
+        (evaluateStyleChangeMultiple):
+        * web-platform-tests/css/css-grid/alignment/support/w3c-import.log:
+        * web-platform-tests/css/css-grid/alignment/test-expected.txt: Added.
+        * web-platform-tests/css/css-grid/alignment/w3c-import.log:
+        * web-platform-tests/css/css-grid/grid-definition/support/grid.css:
+        (.thirdRowThirdColumn):
+        * web-platform-tests/css/css-grid/grid-definition/support/w3c-import.log:
+        * web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001-expected.txt: Added.
+        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt: Added.
+        * web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-expected.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/support/grid.css:
+        (.thirdRowThirdColumn):
+        * web-platform-tests/css/css-grid/grid-items/support/w3c-import.log:
+        * web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html: Added.
+        * web-platform-tests/css/css-grid/grid-items/w3c-import.log:
+        * web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html: Added.
+        * web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html: Added.
+        * web-platform-tests/css/css-grid/grid-model/support/grid.css:
+        (.thirdRowThirdColumn):
+        * web-platform-tests/css/css-grid/grid-model/support/w3c-import.log:
+        * web-platform-tests/css/css-grid/grid-model/w3c-import.log:
+        * web-platform-tests/css/css-grid/implicit-grids/w3c-import.log:
+        * web-platform-tests/css/css-grid/inheritance-expected.txt: Added.
+        * web-platform-tests/css/css-grid/inheritance.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html: Added.
+        * web-platform-tests/css/css-grid/layout-algorithm/w3c-import.log:
+        * web-platform-tests/css/css-grid/parsing/grid-area-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-area-invalid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-area-valid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-area-valid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-template-areas-valid-expected.txt: Added.
+        * web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html: Added.
+        * web-platform-tests/css/css-grid/parsing/w3c-import.log: Added.
+        * web-platform-tests/css/css-grid/placement/w3c-import.log:
+        * web-platform-tests/css/css-grid/test-plan/w3c-import.log:
+        * web-platform-tests/css/css-grid/w3c-import.log:
+        * web-platform-tests/css/support/META.yml: Added.
+        * web-platform-tests/css/support/OWNERS: Removed.
+        * web-platform-tests/css/support/computed-testcommon.js: Added.
+        (test_computed_value):
+        * web-platform-tests/css/support/grid.css:
+        (.thirdRowThirdColumn):
+        * web-platform-tests/css/support/inheritance-testcommon.js: Added.
+        (assert_initial):
+        * web-platform-tests/css/support/parsing-testcommon.js: Added.
+        (test_valid_value):
+        * web-platform-tests/css/support/support/w3c-import.log:
+        * web-platform-tests/css/support/w3c-import.log:
+
+
 2018-11-09  Andy Estes  <aestes@apple.com>
 
         [Payment Request] canMakePayment() should not consider serialized payment method data
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/META.yml b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/META.yml
new file mode 100644 (file)
index 0000000..18c574a
--- /dev/null
@@ -0,0 +1,10 @@
+spec: https://drafts.csswg.org/css-grid/
+suggested_reviewers:
+  - mrego
+  - plinss
+  - jxs
+  - tabatkins
+  - fantasai
+  - atanassov
+  - javifernandez
+  - svillar
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/OWNERS b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/OWNERS
deleted file mode 100644 (file)
index f4adc0e..0000000
+++ /dev/null
@@ -1,9 +0,0 @@
-@mrego
-@tomalec
-@plinss
-@jxs
-@tabatkins
-@fantasai
-@atanassov
-@javifernandez
-@svillar
index 602e114..78fdd5e 100644 (file)
   grid-row: 3;
 }
 
+.thirdRowThirdColumn {
+  background-color: salmon;
+  grid-column: 3;
+  grid-row: 3;
+}
+
 .firstRowThirdColumn {
   background-color: magenta;
   grid-column: 3;
index 6d6d9da..355bcab 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001-expected.txt
new file mode 100644 (file)
index 0000000..e8365a7
--- /dev/null
@@ -0,0 +1,9 @@
+
+FAIL .before 1 assert_equals: 
+<div id="item3" data-expected-width="50" data-expected-height="30" data-offset-x="100" class=" before" data-offset-y="20"></div>
+offsetTop expected 20 but got 0
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0" class=" before" data-offset-y="30"></div>
+offsetTop expected 30 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html
new file mode 100644 (file)
index 0000000..25ce061
--- /dev/null
@@ -0,0 +1,62 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#align-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'align-self' property's value of a grid item from 'baseline' will exclude such item from its baseline context, which implies recomputing all the baseline offsets and aligning the items left in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 100px / 50px 50px 50px;
+  background: grey;
+  align-items: baseline;
+}
+#item1 {
+  height: 20px;
+  background: blue;
+}
+#item2 {
+  height: 50px;
+  background: green;
+}
+#item3 {
+  height: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-y": 30 },
+        item2: {"data-offset-y": 0  },
+        item3: {"data-offset-y": 20 }
+    };
+
+    let after = {
+        item1: {"data-offset-y": 10 },
+        item2: {"data-offset-y": 50 },
+        item3: {"data-offset-y": 0  }
+    };
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.alignSelf = "end";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0"></div>
+        <div id="item2" data-expected-width="50" data-expected-height="50" data-offset-x="50"></div>
+        <div id="item3" data-expected-width="50" data-expected-height="30" data-offset-x="100"></div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002-expected.txt
new file mode 100644 (file)
index 0000000..159932e
--- /dev/null
@@ -0,0 +1,7 @@
+
+PASS .before 1 
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0" class=" before" data-offset-y="10"></div>
+offsetTop expected 10 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html
new file mode 100644 (file)
index 0000000..c97be7d
--- /dev/null
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#align-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'align-self' property's value of a grid item to 'baseline' will include such item into a baseline context, which implies recomputing all the baseline offsets and aligning the items in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 100px / 50px 50px 50px;
+  background: grey;
+  align-items: baseline;
+}
+#item1 {
+  height: 20px;
+  background: blue;
+}
+#item2 {
+  height: 50px;
+  background: green;
+  align-self: center;
+}
+#item3 {
+  height: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-y": 10 },
+        item2: {"data-offset-y": 25 },
+        item3: {"data-offset-y": 0  }
+    };
+
+    let after = {
+        item1: {"data-offset-y": 30 },
+        item2: {"data-offset-y": 0  },
+        item3: {"data-offset-y": 20 }
+    };
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.alignSelf = "baseline";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0"></div>
+        <div id="item2" data-expected-width="50" data-expected-height="50" data-offset-x="50"></div>
+        <div id="item3" data-expected-width="50" data-expected-height="30" data-offset-x="100"></div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003-expected.txt
new file mode 100644 (file)
index 0000000..5125e67
--- /dev/null
@@ -0,0 +1,9 @@
+
+FAIL .before 1 assert_equals: 
+<div id="item3" data-expected-width="30" data-expected-height="50" data-offset-y="100" class=" before" data-offset-x="20"></div>
+offsetLeft expected 20 but got 0
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0" class=" before" data-offset-x="30"></div>
+offsetLeft expected 30 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html
new file mode 100644 (file)
index 0000000..bca78d7
--- /dev/null
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing the Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#justify-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align/#typedef-baseline-position">
+<meta name="assert" content="Changing the justify-self' property's value of a grid item from 'baseline' will exclude such item from its baseline context, which implies recomputing all the baseline offsets and aligning the items left in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 50px 50px 50px / 100px;
+  background: grey;
+  justify-items: baseline;
+}
+#container > div { writing-mode: vertical-rl; }
+#item1 {
+  width: 20px;
+  background: blue;
+}
+#item2 {
+  width: 50px;
+  background: green;
+}
+#item3 {
+  width: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-x": 30 },
+        item2: {"data-offset-x": 0  },
+        item3: {"data-offset-x": 20 }
+    };
+
+    let after = {
+        item1: {"data-offset-x": 10 },
+        item2: {"data-offset-x": 50 },
+        item3: {"data-offset-x": 0  }
+    };
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.justifySelf = "end";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0"></div>
+        <div id="item2" data-expected-width="50" data-expected-height="50" data-offset-y="50"></div>
+        <div id="item3" data-expected-width="30" data-expected-height="50" data-offset-y="100"></div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004-expected.txt
new file mode 100644 (file)
index 0000000..d8afadd
--- /dev/null
@@ -0,0 +1,7 @@
+
+PASS .before 1 
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0" class=" before" data-offset-x="10"></div>
+offsetLeft expected 10 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html
new file mode 100644 (file)
index 0000000..3064f42
--- /dev/null
@@ -0,0 +1,64 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing the Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#justify-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'justify-self' property's value of a grid item to 'baseline' will include such item into a baseline context, which implies recomputing all the baseline offsets and aligning the items in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 50px 50px 50px / 100px;
+  background: grey;
+  justify-items: baseline;
+}
+#container > div { writing-mode: vertical-rl; }
+#item1 {
+  width: 20px;
+  background: blue;
+}
+#item2 {
+  width: 50px;
+  background: green;
+  justify-self: center;
+}
+#item3 {
+  width: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-x": 10 },
+        item2: {"data-offset-x": 25 },
+        item3: {"data-offset-x": 0  }
+    };
+
+    let after = {
+        item1: {"data-offset-x": 30 },
+        item2: {"data-offset-x": 0  },
+        item3: {"data-offset-x": 20 }
+    };
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.justifySelf = "baseline";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0"></div>
+        <div id="item2" data-expected-width="50" data-expected-height="50" data-offset-y="50"></div>
+        <div id="item3" data-expected-width="30" data-expected-height="50" data-offset-y="100"></div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005-expected.txt
new file mode 100644 (file)
index 0000000..b142174
--- /dev/null
@@ -0,0 +1,12 @@
+
+FAIL .before 1 assert_equals: 
+<div id="item3" data-expected-width="50" data-expected-height="30" data-offset-x="100" class=" before" data-offset-y="8">É</div>
+offsetTop expected 8 but got 0
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0" class=" before" data-offset-y="16">É</div>
+offsetTop expected 16 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html
new file mode 100644 (file)
index 0000000..550eed7
--- /dev/null
@@ -0,0 +1,63 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#align-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'align-self' property's value of a grid item from 'baseline' will exclude such item from its baseline context, which implies recomputing all the baseline offsets and aligning the items left in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 100px / 50px 50px 50px;
+  background: grey;
+  align-items: baseline;
+  font-family: Ahem;
+}
+#item1 {
+  font-size: 20px;
+  background: blue;
+}
+#item2 {
+  font-size: 40px;
+  background: green;
+}
+#item3 {
+  font-size: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-y": 16 },
+        item2: {"data-offset-y": 0  },
+        item3: {"data-offset-y": 8  }
+    }
+
+    let after = {
+        item1: {"data-offset-y": 8  },
+        item2: {"data-offset-y": 60 },
+        item3: {"data-offset-y": 0  }
+    }
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.alignSelf = "end";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0">É</div>
+        <div id="item2" data-expected-width="50" data-expected-height="40" data-offset-x="50">É</div>
+        <div id="item3" data-expected-width="50" data-expected-height="30" data-offset-x="100">É</div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006-expected.txt
new file mode 100644 (file)
index 0000000..0f22c62
--- /dev/null
@@ -0,0 +1,10 @@
+
+PASS .before 1 
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0" class=" before" data-offset-y="8">É</div>
+offsetTop expected 8 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html
new file mode 100644 (file)
index 0000000..1df78c0
--- /dev/null
@@ -0,0 +1,64 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#align-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'align-self' property's value of a grid item to 'baseline' will include such item into a baseline context, which implies recomputing all the baseline offsets and aligning the items in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 100px / 50px 50px 50px;
+  background: grey;
+  align-items: baseline;
+  font-family: Ahem;
+}
+#item1 {
+  font-size: 20px;
+  background: blue;
+}
+#item2 {
+  font-size: 40px;
+  background: green;
+  align-self: center;
+}
+#item3 {
+  font-size: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-y": 8  },
+        item2: {"data-offset-y": 30 },
+        item3: {"data-offset-y": 0  }
+    }
+
+    let after = {
+        item1: {"data-offset-y": 16 },
+        item2: {"data-offset-y": 0  },
+        item3: {"data-offset-y": 8  }
+    }
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.alignSelf = "baseline";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="50" data-expected-height="20" data-offset-x="0">É</div>
+        <div id="item2" data-expected-width="50" data-expected-height="40" data-offset-x="50">É</div>
+        <div id="item3" data-expected-width="50" data-expected-height="30" data-offset-x="100">É</div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007-expected.txt
new file mode 100644 (file)
index 0000000..4d808c4
--- /dev/null
@@ -0,0 +1,12 @@
+
+FAIL .before 1 assert_equals: 
+<div id="item3" data-expected-width="30" data-expected-height="50" data-offset-y="100" class=" before" data-offset-x="2">É</div>
+offsetLeft expected 2 but got 0
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0" class=" before" data-offset-x="4">É</div>
+offsetLeft expected 4 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html
new file mode 100644 (file)
index 0000000..a81fed7
--- /dev/null
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing the value of Self-Alignment properties</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#justify-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'align-self' property's value of a grid item from 'baseline' will exclude such item from its baseline context, which implies recomputing all the baseline offsets and aligning the items left in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 50px 50px 50px / 100px;
+  background: grey;
+  justify-items: baseline;
+  font-family: Ahem;
+  -webkit-text-orientation: sideways;
+}
+#container > div { writing-mode: vertical-lr; }
+#item1 {
+  font-size: 20px;
+  background: blue;
+}
+#item2 {
+  font-size: 40px;
+  background: green;
+}
+#item3 {
+  font-size: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-x": 4 },
+        item2: {"data-offset-x": 0 },
+        item3: {"data-offset-x": 2 }
+    }
+
+    let after = {
+        item1: {"data-offset-x": 2 },
+        item2: {"data-offset-x": 60 },
+        item3: {"data-offset-x": 0  }
+    }
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.justifySelf = "end";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0">É</div>
+        <div id="item2" data-expected-width="40" data-expected-height="50" data-offset-y="50">É</div>
+        <div id="item3" data-expected-width="30" data-expected-height="50" data-offset-y="100">É</div>
+    </div>
+    <div id="log"></div>
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008-expected.txt
new file mode 100644 (file)
index 0000000..0fdb0f3
--- /dev/null
@@ -0,0 +1,10 @@
+
+PASS .before 1 
+PASS .before 2 
+FAIL .before 3 assert_equals: 
+<div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0" class=" before" data-offset-x="5">É</div>
+offsetLeft expected 5 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html
new file mode 100644 (file)
index 0000000..026f035
--- /dev/null
@@ -0,0 +1,65 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Changing the Self-Alignment properties to interfere in Baseline Alignment</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#self-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#justify-self-property">
+<link rel="help" href="https://drafts.csswg.org/css-align/#typedef-baseline-position">
+<meta name="assert" content="Changing the 'justify-self' property's value of a grid item to 'baseline' will include such item into a baseline context, which implies recomputing all the baseline offsets and aligning the items in such context.">
+<style>
+#container {
+  position: relative;
+  display: inline-grid;
+  grid: 50px 50px 50px / 100px;
+  background: grey;
+  justify-items: baseline;
+  font-family: Ahem;
+}
+#container > div { writing-mode: vertical-lr; }
+#item1 {
+  font-size: 20px;
+  background: blue;
+}
+#item2 {
+  font-size: 40px;
+  background: green;
+  justify-self: center;
+}
+#item3 {
+  font-size: 30px;
+  background: red;
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<script src="support/style-change.js"></script>
+<script>
+function runTest() {
+    let before = {
+        item1: {"data-offset-x": 5  },
+        item2: {"data-offset-x": 30 },
+        item3: {"data-offset-x": 0  }
+    };
+
+    let after = {
+        item1: {"data-offset-x": 10 },
+        item2: {"data-offset-x": 0  },
+        item3: {"data-offset-x": 5  }
+    };
+
+    evaluateStyleChangeMultiple("before", before);
+    item2.style.justifySelf = "baseline";
+    evaluateStyleChangeMultiple("after", after);
+    done();
+}
+</script>
+<body onload="runTest()">
+    <div id="container">
+        <div id="item1" data-expected-width="20" data-expected-height="50" data-offset-y="0">É</div>
+        <div id="item2" data-expected-width="40" data-expected-height="50" data-offset-y="50">É</div>
+        <div id="item3" data-expected-width="30" data-expected-height="50" data-offset-y="100">É</div>
+    </div>
+    <div id="log"></div>
+</body>
index a7abd5a..a9f6473 100644 (file)
@@ -6,6 +6,7 @@ auto-sized rows - items with relative height
  fit-content-sized rows - items with relative height
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
  flexible-sized rows - items with relative height
+ flex max-function rows - items with relative height
  auto-sized columns - items with relative width
  min-content-sized columns - items with relative width
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
@@ -14,45 +15,55 @@ auto-sized rows - items with relative height
  fit-content-sized columns - items with relative width
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
  flexible-sized columns - items with relative width
+ flex max-function columns - items with relative width
+baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.
 
 FAIL .inline-grid 1 assert_equals: 
-<div class="inline-grid justifyItemsBaseline rows flex-columns">
-  <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
-width expected 100 but got 400
+<div class="inline-grid justifyItemsBaseline rows max-flex-columns">
+        <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="-50" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+offsetLeft expected -50 but got 0
 FAIL .inline-grid 2 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows flex-columns">
+        <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+width expected 100 but got 300
+FAIL .inline-grid 3 assert_equals: 
 <div class="inline-grid justifyItemsBaseline rows fit-content-columns">
-  <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
+        <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
 width expected 160 but got 420
-FAIL .inline-grid 3 assert_equals: 
+FAIL .inline-grid 4 assert_equals: 
 <div class="inline-grid justifyItemsBaseline rows max-content-columns">
-  <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
+        <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
 width expected 160 but got 420
-FAIL .inline-grid 4 assert_equals: 
+FAIL .inline-grid 5 assert_equals: 
 <div class="inline-grid justifyItemsBaseline rows min-content-columns">
-  <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
+        <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
 width expected 160 but got 420
-FAIL .inline-grid 5 assert_equals: 
+FAIL .inline-grid 6 assert_equals: 
 <div class="inline-grid justifyItemsBaseline rows">
-  <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
+        <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
 width expected 100 but got 300
-PASS .inline-grid 6 
 PASS .inline-grid 7 
 PASS .inline-grid 8 
 PASS .inline-grid 9 
 PASS .inline-grid 10 
+PASS .inline-grid 11 
+PASS .inline-grid 12 
 
index 1de5477..ddc388a 100644 (file)
 .columns { grid-template-columns: 100px 100px; }
 .rows { grid-template-rows: 100px 100px; }
 
-.min-content-columns { grid-auto-columns: min-content; }
-.max-content-columns { grid-auto-columns: max-content; }
-.fit-content-columns { grid-auto-columns: fit-content; }
-.flex-columns        { grid-auto-columns: 1fr; }
-.min-content-rows { grid-auto-rows: min-content; }
-.max-content-rows { grid-auto-rows: max-content; }
-.fit-content-rows { grid-auto-rows: fit-content; }
-.flex-rows        { grid-auto-rows: 1fr; }
+.min-content-columns { grid-template-columns: min-content; }
+.max-content-columns { grid-template-columns: max-content; }
+.fit-content-columns { grid-template-columns: fit-content; }
+.min-content-rows { grid-template-rows: min-content; }
+.max-content-rows { grid-template-rows: max-content; }
+.fit-content-rows { grid-template-rows: fit-content; }
+
+.flex-columns     { grid-template-columns: 1fr; }
+.max-flex-columns { grid-template-columns: minmax(0px, 1fr); }
+.flex-rows        { grid-template-rows: 1fr; }
+.max-flex-rows    { grid-template-rows: minmax(0px, 1fr); }
 
 .height25  { height: 25px; }
 .height50  { height: 50px; }
 <script src="/resources/check-layout-th.js"></script>
 <body onload="checkLayout('.inline-grid')">
 
-<pre>auto-sized rows - items with relative height</pre>
-
-<div class="inline-grid alignItemsBaseline columns">
-  <div class="firstRowFirstColumn height50"          data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="50"></div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
-  <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="50" data-expected-width="200" data-expected-height="25"></div>
+<div style="height: 125px">
+    <pre>auto-sized rows - items with relative height</pre>
+    <div class="inline-grid alignItemsBaseline columns">
+        <div class="firstRowFirstColumn height50"          data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="50"></div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
+        <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="50" data-expected-width="200" data-expected-height="25"></div>
+    </div>
 </div>
 
-<pre>min-content-sized rows - items with relative height</pre>
-
-<div class="inline-grid alignItemsBaseline columns min-content-rows">
-  <div class="firstRowFirstColumn"                   data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="160"></div>
-  <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+<div style="height: 200px">
+    <pre>min-content-sized rows - items with relative height</pre>
+    <div class="inline-grid alignItemsBaseline columns min-content-rows">
+        <div class="firstRowFirstColumn"                   data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="160"></div>
+        <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+    </div>
 </div>
 
-<pre>max-content-sized rows - items with relative height</pre>
-
-<div class="inline-grid alignItemsBaseline columns max-content-rows">
-  <div class="firstRowFirstColumn"                   data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="160"></div>
-  <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+<div style="height: 200px">
+    <pre>max-content-sized rows - items with relative height</pre>
+    <div class="inline-grid alignItemsBaseline columns max-content-rows">
+        <div class="firstRowFirstColumn"                   data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="160"></div>
+        <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+    </div>
 </div>
 
-<pre>fit-content-sized rows - items with relative height</pre>
-
-<div class="inline-grid alignItemsBaseline columns fit-content-rows">
-  <div class="firstRowFirstColumn"                   data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="160"></div>
-  <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+<div style="height: 200px">
+    <pre>fit-content-sized rows - items with relative height</pre>
+    <div class="inline-grid alignItemsBaseline columns fit-content-rows">
+        <div class="firstRowFirstColumn"                   data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="160"></div>
+        <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+    </div>
 </div>
 
-<pre>flexible-sized rows - items with relative height</pre>
-
-<div class="inline-grid alignItemsBaseline columns flex-rows">
-  <div class="firstRowFirstColumn height50"          data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="50"></div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
-  <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="50" data-expected-width="200" data-expected-height="25"></div>
+<div style="height: 125px">
+    <pre>flexible-sized rows - items with relative height</pre>
+    <div class="inline-grid alignItemsBaseline columns flex-rows">
+        <div class="firstRowFirstColumn height50"          data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="50"></div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
+        <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="50" data-expected-width="200" data-expected-height="25"></div>
+    </div>
 </div>
 
-<pre>auto-sized columns - items with relative width</pre>
-
-<div class="inline-grid justifyItemsBaseline rows">
-  <div class="firstRowFirstColumn verticalRL width50"          data-offset-x="0"  data-offset-y="0"   data-expected-width="50"  data-expected-height="100"></div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="50" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+<div style="height: 125px">
+    <pre>flex max-function rows - items with relative height</pre>
+    <div class="inline-grid alignItemsBaseline columns max-flex-rows">
+        <div class="firstRowFirstColumn height50"          data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="50"></div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="100"></div>
+        <div class="autoRowAutoColumnSpanning2 height25"   data-offset-x="0"   data-offset-y="50" data-expected-width="200" data-expected-height="25"></div>
+    </div>
 </div>
 
-<pre>min-content-sized columns - items with relative width</pre>
-
-<div class="inline-grid justifyItemsBaseline rows min-content-columns">
-  <div class="firstRowFirstColumn verticalRL"                  data-offset-x="0"  data-offset-y="0"   data-expected-width="80"  data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="80" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+<div style="height: 250px">
+    <pre>auto-sized columns - items with relative width</pre>
+    <div class="inline-grid justifyItemsBaseline rows">
+        <div class="firstRowFirstColumn verticalRL width50"          data-offset-x="0"  data-offset-y="0"   data-expected-width="50"  data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="50" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+    </div>
 </div>
 
-<pre>max-content-sized columns - items with relative width</pre>
-
-<div class="inline-grid justifyItemsBaseline rows max-content-columns">
-  <div class="firstRowFirstColumn verticalRL"                  data-offset-x="0"  data-offset-y="0"   data-expected-width="80"  data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="80" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+<div style="height: 250px">
+    <pre>min-content-sized columns - items with relative width</pre>
+    <div class="inline-grid justifyItemsBaseline rows min-content-columns">
+        <div class="firstRowFirstColumn verticalRL"                  data-offset-x="0"  data-offset-y="0"   data-expected-width="80"  data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="80" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+    </div>
 </div>
 
-<pre>fit-content-sized columns - items with relative width</pre>
+<div style="height: 250px">
+    <pre>max-content-sized columns - items with relative width</pre>
+    <div class="inline-grid justifyItemsBaseline rows max-content-columns">
+        <div class="firstRowFirstColumn verticalRL"                  data-offset-x="0"  data-offset-y="0"   data-expected-width="80"  data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="80" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+    </div>
+</div>
 
-<div class="inline-grid justifyItemsBaseline rows fit-content-columns">
-  <div class="firstRowFirstColumn verticalRL"                  data-offset-x="0"  data-offset-y="0"   data-expected-width="80"  data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="80" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+<div style="height: 250px">
+    <pre>fit-content-sized columns - items with relative width</pre>
+    <div class="inline-grid justifyItemsBaseline rows fit-content-columns">
+        <div class="firstRowFirstColumn verticalRL"                  data-offset-x="0"  data-offset-y="0"   data-expected-width="80"  data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="80" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+    </div>
 </div>
 
-<pre>flexible-sized columns - items with relative width</pre>
+<div style="height: 250px">
+    <pre>flexible-sized columns - items with relative width</pre>
+    <div class="inline-grid justifyItemsBaseline rows flex-columns">
+        <div class="firstRowFirstColumn verticalRL width50"          data-offset-x="0"  data-offset-y="0"   data-expected-width="50"  data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="50" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+    </div>
+</div>
 
-<div class="inline-grid justifyItemsBaseline rows flex-columns">
-  <div class="firstRowFirstColumn verticalRL width50"          data-offset-x="0"  data-offset-y="0"   data-expected-width="50"  data-expected-height="100"></div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0"  data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="50" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+<div style="height: 250px">
+    <pre>flex max-function columns - items with relative width<br>baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.</pre>
+    <!--  https://github.com/w3c/csswg-drafts/issues/3046  -->
+    <div class="inline-grid justifyItemsBaseline rows max-flex-columns">
+        <div class="firstRowFirstColumn verticalRL width50"          data-offset-x="0"   data-offset-y="0"   data-expected-width="50"  data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="-50" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25"  data-offset-x="50"  data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+    </div>
 </div>
+
+</body>
index fbb1ac1..1be6669 100644 (file)
@@ -10,6 +10,13 @@ auto-sized rows - horizonal grid and verticalLR item - column-axis baseline
  fit-content-sized rows - horizonal grid and verticalLR item - column-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ flex-sized rows - horizonal grid and verticalLR item - column-axis baseline
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ max-flex-sized rows - horizonal grid and verticalLR item - column-axis baseline
+baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
  auto-sized columns - horizontal grid item - row-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
@@ -22,6 +29,13 @@ auto-sized rows - horizonal grid and verticalLR item - column-axis baseline
  fit-content-sized columns - horizontal grid item - row-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ flex-sized columns - horizontal grid item - row-axis baseline
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ max-flex-sized columns - horizontal grid item - row-axis baseline
+baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
  auto-sized rows - verticalLR grid and horizontal item - column-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
@@ -34,6 +48,13 @@ auto-sized rows - horizonal grid and verticalLR item - column-axis baseline
  fit-content-sized rows - verticalLR grid and horizontal item - column-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ flex-sized rows - verticalLR grid and horizontal item - column-axis baseline
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ max-flex-sized rows - verticalLR grid and horizontal item - column-axis baseline
+baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
  auto-sized rows - verticalRL grid and horizontal item - column-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
@@ -46,21 +67,60 @@ auto-sized rows - horizonal grid and verticalLR item - column-axis baseline
  fit-content-sized rows - verticalRL grid and horizontal item - column-axis baseline
 É
 ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ flex-sized rows - verticalRL grid and horizontal item - column-axis baseline
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ max-flex-sized rows - verticalRL grid and horizontal item - column-axis baseline
+baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
 
-PASS .inline-grid 1 
+FAIL .inline-grid 1 assert_equals: 
+<div class="inline-grid verticalRL alignItemsBaseline columns max-flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="-10" data-offset-y="0" data-expected-width="75" data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB" data-offset-x="25" data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25" data-offset-x="0" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+</div>
+offsetLeft expected -10 but got 366
 PASS .inline-grid 2 
 PASS .inline-grid 3 
 PASS .inline-grid 4 
 PASS .inline-grid 5 
 PASS .inline-grid 6 
-PASS .inline-grid 7 
+FAIL .inline-grid 7 assert_equals: 
+<div class="inline-grid verticalLR alignItemsBaseline columns max-flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0" data-offset-y="0" data-expected-width="75" data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB" data-offset-x="35" data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25" data-offset-x="416" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+</div>
+offsetLeft expected 35 but got 0
 PASS .inline-grid 8 
 PASS .inline-grid 9 
 PASS .inline-grid 10 
 PASS .inline-grid 11 
 PASS .inline-grid 12 
-PASS .inline-grid 13 
+FAIL .inline-grid 13 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows max-flex-columns">
+  <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0" data-offset-y="0" data-expected-width="75" data-expected-height="100">É</div>
+  <div class="secondRowFirstColumn" data-offset-x="35" data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="firstRowSpanning2AutoColumn width25" data-offset-x="416" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+</div>
+offsetLeft expected 35 but got 0
 PASS .inline-grid 14 
 PASS .inline-grid 15 
 PASS .inline-grid 16 
+PASS .inline-grid 17 
+PASS .inline-grid 18 
+FAIL .inline-grid 19 assert_equals: 
+<div class="inline-grid alignItemsBaseline columns max-flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0" data-offset-y="376" data-expected-width="100" data-expected-height="75">É</div>
+  <div class="firstRowSecondColumn verticalLR" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="416" data-expected-width="200" data-expected-height="25"></div>
+</div>
+offsetTop expected 376 but got 0
+PASS .inline-grid 20 
+PASS .inline-grid 21 
+PASS .inline-grid 22 
+PASS .inline-grid 23 
+PASS .inline-grid 24 
 
index 2cbfbaf..e53e781 100644 (file)
 .columns { grid-template-columns: 100px 100px; }
 .rows { grid-template-rows: 100px 100px; }
 
-.min-content-columns { grid-auto-columns: min-content; }
-.max-content-columns { grid-auto-columns: max-content; }
-.fit-content-columns { grid-auto-columns: fit-content; }
-.flex-columns        { grid-auto-columns: 1fr; }
-.min-content-rows { grid-auto-rows: min-content; }
-.max-content-rows { grid-auto-rows: max-content; }
-.fit-content-rows { grid-auto-rows: fit-content; }
-.flex-rows        { grid-auto-rows: 1fr; }
+.min-content-columns { grid-template-columns: min-content; }
+.max-content-columns { grid-template-columns: max-content; }
+.fit-content-columns { grid-template-columns: fit-content; }
+.flex-columns        { grid-template-columns: 1fr; }
+.max-flex-columns    { grid-template-columns: minmax(0px, 1fr); }
+
+.min-content-rows { grid-template-rows: min-content; }
+.max-content-rows { grid-template-rows: max-content; }
+.fit-content-rows { grid-template-rows: fit-content; }
+.flex-rows        { grid-template-rows: 1fr; }
+.max-flex-rows    { grid-template-rows: minmax(0px, 1fr); }
 
 .height25  { height: 25px; }
 .height50  { height: 50px; }
@@ -50,7 +53,6 @@
 <body onload="checkLayout('.inline-grid')">
 
 <pre>auto-sized rows - horizonal grid and verticalLR item - column-axis baseline</pre>
-
 <div class="inline-grid alignItemsBaseline columns height200">
   <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"   data-expected-width="100" data-expected-height="75">É</div>
   <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"   data-expected-width="100" data-expected-height="175">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
@@ -58,7 +60,6 @@
 </div>
 
 <pre>min-content-sized rows - horizonal grid and verticalLR item - column-axis baseline</pre>
-
 <div class="inline-grid alignItemsBaseline columns min-content-rows">
   <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="75">É</div>
   <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="75">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>max-content-sized rows - horizonal grid and verticalLR item - column-axis baseline</pre>
-
 <div class="inline-grid alignItemsBaseline columns max-content-rows">
-  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="75">É</div>
-  <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"   data-expected-width="100" data-expected-height="75">É</div>
+  <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"   data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
   <div class="autoRowAutoColumnSpanning2 height25"       data-offset-x="0"   data-offset-y="416" data-expected-width="200" data-expected-height="25"></div>
 </div>
 
 <pre>fit-content-sized rows - horizonal grid and verticalLR item - column-axis baseline</pre>
-
 <div class="inline-grid alignItemsBaseline columns fit-content-rows">
-  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"  data-expected-width="100" data-expected-height="75">É</div>
-  <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"   data-expected-width="100" data-expected-height="75">É</div>
+  <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"   data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
   <div class="autoRowAutoColumnSpanning2 height25"       data-offset-x="0"   data-offset-y="416" data-expected-width="200" data-expected-height="25"></div>
 </div>
 
-<pre>auto-sized columns - horizontal grid item - row-axis baseline</pre>
+<pre>flex-sized rows - horizonal grid and verticalLR item - column-axis baseline</pre>
+<div class="inline-grid alignItemsBaseline columns flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="0"   data-expected-width="100" data-expected-height="75">É</div>
+  <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"   data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 height25"       data-offset-x="0"   data-offset-y="416" data-expected-width="200" data-expected-height="25"></div>
+</div>
 
+<pre>max-flex-sized rows - horizonal grid and verticalLR item - column-axis baseline<br>baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.</pre>
+<!--  https://github.com/w3c/csswg-drafts/issues/3046  -->
+<div class="inline-grid alignItemsBaseline columns max-flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingBottom" data-offset-x="0"   data-offset-y="376" data-expected-width="100" data-expected-height="75">É</div>
+  <div class="firstRowSecondColumn verticalLR"           data-offset-x="100" data-offset-y="0"   data-expected-width="100" data-expected-height="416">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 height25"       data-offset-x="0"   data-offset-y="416" data-expected-width="200" data-expected-height="25"></div>
+</div>
+
+<pre>auto-sized columns - horizontal grid item - row-axis baseline</pre>
 <div class="inline-grid justifyItemsBaseline rows width200">
   <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
   <div class="secondRowFirstColumn"                               data-offset-x="0"   data-offset-y="100" data-expected-width="175" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>min-content-sized columns - horizontal grid item - row-axis baseline</pre>
-
 <div class="inline-grid justifyItemsBaseline rows min-content-columns">
   <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0"  data-offset-y="0"   data-expected-width="75" data-expected-height="100">É</div>
   <div class="secondRowFirstColumn"                               data-offset-x="0"  data-offset-y="100" data-expected-width="75" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>max-content-sized columns - horizontal grid item - row-axis baseline</pre>
-
 <div class="inline-grid justifyItemsBaseline rows max-content-columns">
   <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
   <div class="secondRowFirstColumn"                               data-offset-x="0"   data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>fit-content-sized columns - horizontal grid item - row-axis baseline</pre>
-
 <div class="inline-grid justifyItemsBaseline rows fit-content-columns">
   <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
   <div class="secondRowFirstColumn"                               data-offset-x="0"   data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
   <div class="firstRowSpanning2AutoColumn width25"                data-offset-x="416" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
 </div>
 
-<pre>auto-sized rows - verticalLR grid and horizontal item - column-axis baseline</pre>
+<pre>flex-sized columns - horizontal grid item - row-axis baseline</pre>
+<div class="inline-grid justifyItemsBaseline rows flex-columns">
+  <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="secondRowFirstColumn"                               data-offset-x="0"   data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="firstRowSpanning2AutoColumn width25"                data-offset-x="416" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+</div>
+
+<pre>max-flex-sized columns - horizontal grid item - row-axis baseline<br>baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.</pre>
+<!--  https://github.com/w3c/csswg-drafts/issues/3046  -->
+<div class="inline-grid justifyItemsBaseline rows max-flex-columns">
+  <div class="firstRowFirstColumn bigFont verticalLR paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="secondRowFirstColumn"                               data-offset-x="35"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="firstRowSpanning2AutoColumn width25"                data-offset-x="416" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+</div>
 
+<pre>auto-sized rows - verticalLR grid and horizontal item - column-axis baseline</pre>
 <div class="inline-grid verticalLR alignItemsBaseline columns width200">
   <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
   <div class="firstRowSecondColumn horizontalTB"       data-offset-x="0"   data-offset-y="100" data-expected-width="175" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>min-content-sized rows - verticalLR grid and horizontal item - column-axis baseline</pre>
-
 <div class="inline-grid verticalLR alignItemsBaseline columns min-content-rows">
   <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0"  data-offset-y="0"   data-expected-width="75" data-expected-height="100">É</div>
   <div class="firstRowSecondColumn horizontalTB"       data-offset-x="0"  data-offset-y="100" data-expected-width="75" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>max-content-sized rows - verticalLR grid and horizontal item - column-axis baseline</pre>
-
 <div class="inline-grid verticalLR alignItemsBaseline columns max-content-rows">
   <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
   <div class="firstRowSecondColumn horizontalTB"       data-offset-x="0"   data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
 </div>
 
 <pre>fit-content-sized rows - verticalLR grid and horizontal item - column-axis baseline</pre>
-
 <div class="inline-grid verticalLR alignItemsBaseline columns fit-content-rows">
   <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
   <div class="firstRowSecondColumn horizontalTB"       data-offset-x="0"   data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
   <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="416" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
 </div>
 
-<pre>auto-sized rows - verticalRL grid and horizontal item - column-axis baseline</pre>
+<pre>flex-sized rows - verticalLR grid and horizontal item - column-axis baseline</pre>
+<div class="inline-grid verticalLR alignItemsBaseline columns flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="0"   data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="416" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+</div>
 
+<pre>max-flex-sized rows - verticalLR grid and horizontal item - column-axis baseline<br>baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.</pre>
+<!--  https://github.com/w3c/csswg-drafts/issues/3046  -->
+<div class="inline-grid verticalLR alignItemsBaseline columns max-flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="0"   data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="35"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="416" data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+</div>
+
+<pre>auto-sized rows - verticalRL grid and horizontal item - column-axis baseline</pre>
 <div class="inline-grid verticalRL alignItemsBaseline columns width200">
-  <div class="firstRowFirstColumn bigFont paddingRight"  data-offset-x="125" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
-  <div class="firstRowSecondColumn horizontalTB"         data-offset-x="25"  data-offset-y="100" data-expected-width="175" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="autoRowAutoColumnSpanning2 width25"        data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="125" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="25"  data-offset-y="100" data-expected-width="175" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
 </div>
 
 <pre>min-content-sized rows - verticalRL grid and horizontal item - column-axis baseline</pre>
-
 <div class="inline-grid verticalRL alignItemsBaseline columns min-content-rows">
-  <div class="firstRowFirstColumn bigFont paddingRight"  data-offset-x="25" data-offset-y="0"   data-expected-width="75" data-expected-height="100">É</div>
-  <div class="firstRowSecondColumn horizontalTB"         data-offset-x="25" data-offset-y="100" data-expected-width="75" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="autoRowAutoColumnSpanning2 width25"        data-offset-x="0"  data-offset-y="0"   data-expected-width="25" data-expected-height="200"></div>
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="25" data-offset-y="0"   data-expected-width="75" data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="25" data-offset-y="100" data-expected-width="75" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="0"  data-offset-y="0"   data-expected-width="25" data-expected-height="200"></div>
 </div>
 
 <pre>max-content-sized rows - verticalRL grid and horizontal item - column-axis baseline</pre>
-
 <div class="inline-grid verticalRL alignItemsBaseline columns max-content-rows">
-  <div class="firstRowFirstColumn bigFont paddingRight"  data-offset-x="366" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
-  <div class="firstRowSecondColumn horizontalTB"         data-offset-x="25"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="autoRowAutoColumnSpanning2 width25"        data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="366" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="25"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
 </div>
 
 <pre>fit-content-sized rows - verticalRL grid and horizontal item - column-axis baseline</pre>
-
 <div class="inline-grid verticalRL alignItemsBaseline columns fit-content-rows">
-  <div class="firstRowFirstColumn bigFont paddingRight"  data-offset-x="366" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
-  <div class="firstRowSecondColumn horizontalTB"         data-offset-x="25"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="autoRowAutoColumnSpanning2 width25"        data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="366" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="25"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+</div>
+
+<pre>flex-sized rows - verticalRL grid and horizontal item - column-axis baseline</pre>
+<div class="inline-grid verticalRL alignItemsBaseline columns flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="366" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="25"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
 </div>
+
+<pre>max-flex-sized rows - verticalRL grid and horizontal item - column-axis baseline<br>baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.</pre>
+<!--  https://github.com/w3c/csswg-drafts/issues/3046  -->
+<div class="inline-grid verticalRL alignItemsBaseline columns max-flex-rows">
+  <div class="firstRowFirstColumn bigFont paddingLeft" data-offset-x="-10" data-offset-y="0"   data-expected-width="75"  data-expected-height="100">É</div>
+  <div class="firstRowSecondColumn horizontalTB"       data-offset-x="25"  data-offset-y="100" data-expected-width="416" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+  <div class="autoRowAutoColumnSpanning2 width25"      data-offset-x="0"   data-offset-y="0"   data-expected-width="25"  data-expected-height="200"></div>
+</div>
+
+</body>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003-expected.txt
new file mode 100644 (file)
index 0000000..507c59f
--- /dev/null
@@ -0,0 +1,64 @@
+flex rows - column-axis baseline - the blue orthogonal item didn't participate in the first iteration
+ flex row - column-axis baseline - the blue relative sized item didn't participate in the first iterarion
+ flex row - both the blue relative sized and red orthogonal didn't participate in the first iteration
+ flex column - row-axis baseline - the blue orthogonal item didn't participate in the first iteration
+ flex column - column-axis baseline - the blue relative sized item didn't participate in the first iterarion
+ flex columns - both the blue relative sized and red orthogonal didn't participate in the first iteration
+
+FAIL .grid 1 assert_equals: 
+<div class="grid column justifyItemsBaseline">
+  <div class="item1 relativeWidth height50" data-offset-x="16" data-offset-y="0" data-expected-width="40" data-expected-height="50"></div>
+  <div class="item2" data-offset-x="16" data-offset-y="50" data-expected-width="20" data-expected-height="50">É</div>
+  <div class="item3 verticalLR" data-offset-x="0" data-offset-y="100" data-expected-width="80" data-expected-height="100">É</div>
+</div>
+offsetLeft expected 16 but got 0
+FAIL .grid 2 assert_equals: 
+<div class="grid column justifyItemsBaseline">
+  <div class="item1 relativeWidth height50" data-offset-x="16" data-offset-y="0" data-expected-width="40" data-expected-height="50"></div>
+  <div class="item2 verticalLR" data-offset-x="12" data-offset-y="50" data-expected-width="20" data-expected-height="50">É</div>
+  <div class="item3 verticalLR" data-offset-x="0" data-offset-y="100" data-expected-width="80" data-expected-height="100">É</div>
+</div>
+offsetLeft expected 16 but got 0
+FAIL .grid 3 assert_equals: 
+<div class="grid column justifyItemsBaseline">
+  <div class="item1" data-offset-x="16" data-offset-y="0" data-expected-width="30" data-expected-height="50">É</div>
+  <div class="item2 verticalLR" data-offset-x="12" data-offset-y="50" data-expected-width="20" data-expected-height="50">É</div>
+  <div class="item3 verticalLR" data-offset-x="0" data-offset-y="100" data-expected-width="80" data-expected-height="100">É</div>
+</div>
+offsetLeft expected 16 but got 0
+FAIL .grid 4 assert_equals: 
+<div class="grid row alignItemsBaseline">
+  <div class="item1 relativeHeight" data-offset-x="0" data-offset-y="24" data-expected-width="50" data-expected-height="40"></div>
+  <div class="item2 verticalLR" data-offset-x="50" data-offset-y="44" data-expected-width="50" data-expected-height="20">É</div>
+  <div class="item3" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="80">É</div>
+</div>
+offsetTop expected 24 but got 0
+FAIL .grid 5 assert_equals: 
+<div class="grid row alignItemsBaseline ">
+  <div class="item1 relativeHeight" data-offset-x="0" data-offset-y="40" data-expected-width="50" data-expected-height="40"></div>
+  <div class="item2" data-offset-x="50" data-offset-y="64" data-expected-width="50" data-expected-height="20">É</div>
+  <div class="item3 verticalLR" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="80">É</div>
+</div>
+offsetTop expected 40 but got 0
+FAIL .grid 6 assert_equals: 
+<div class="grid row alignItemsBaseline">
+  <div class="item1 verticalLR" data-offset-x="0" data-offset-y="34" data-expected-width="50" data-expected-height="30">É</div>
+  <div class="item2" data-offset-x="50" data-offset-y="48" data-expected-width="50" data-expected-height="20">É</div>
+  <div class="item3" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="80">É</div>
+</div>
+offsetTop expected 34 but got 0
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html
new file mode 100644 (file)
index 0000000..d6b37e6
--- /dev/null
@@ -0,0 +1,89 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Self-Baseline alignment and sizing cyclic dependency</title>
+<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#alignment">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#column-align">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#row-align">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#propdef-align-items">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#propdef-justify-items">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#baseline-alignment">
+<link rel="help" href="https://drafts.csswg.org/css-align-3/#valdef-justify-self-baseline">
+<link rel="stylesheet" href="../../support/grid.css">
+<link rel="stylesheet" href="../../support/alignment.css">
+<meta name="assert" content="Items not participating in baseline may later participate if there is an extra pass of the track sizing algorithm.">
+<!--  https://github.com/w3c/csswg-drafts/issues/3046  -->
+<style>
+.grid {
+  position: relative;
+  display: inline-grid;
+  background: grey;
+  -webkit-text-orientation: sideways;
+  font-family: Ahem;
+}
+.row { grid: minmax(0px, 1fr) / 50px 50px 100px }
+.column { grid: 50px 50px 100px / minmax(0px, 1fr); }
+.item1 {
+   font-size: 30px;
+   background: blue;
+}
+.item2 {
+  font-size: 20px;
+  background: red;
+}
+.item3 {
+  font-size: 80px;
+  background: green;
+}
+.height50 { height: 50px; }
+.relativeHeight { height: 50%; }
+.relativeWidth  { width: 50%; }
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+<body onload="checkLayout('.grid')">
+
+<pre>flex rows - column-axis baseline - the blue orthogonal item didn't participate in the first iteration</pre>
+<div class="grid row alignItemsBaseline">
+  <div class="item1 verticalLR" data-offset-x="0"   data-offset-y="34" data-expected-width="50"  data-expected-height="30">É</div>
+  <div class="item2"            data-offset-x="50"  data-offset-y="48" data-expected-width="50"  data-expected-height="20">É</div>
+  <div class="item3"            data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="80">É</div>
+</div>
+
+<pre>flex row - column-axis baseline - the blue relative sized item didn't participate in the first iterarion</pre>
+<div class="grid row alignItemsBaseline ">
+  <div class="item1 relativeHeight" data-offset-x="0"   data-offset-y="40" data-expected-width="50"  data-expected-height="40"></div>
+  <div class="item2"                data-offset-x="50"  data-offset-y="64" data-expected-width="50"  data-expected-height="20">É</div>
+  <div class="item3 verticalLR"     data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="80">É</div>
+</div>
+
+<pre>flex row - both the blue relative sized and red orthogonal didn't participate in the first iteration</pre>
+<div class="grid row alignItemsBaseline">
+  <div class="item1 relativeHeight" data-offset-x="0"   data-offset-y="24" data-expected-width="50"  data-expected-height="40"></div>
+  <div class="item2 verticalLR"     data-offset-x="50"  data-offset-y="44" data-expected-width="50"  data-expected-height="20">É</div>
+  <div class="item3"                data-offset-x="100" data-offset-y="0"  data-expected-width="100" data-expected-height="80">É</div>
+</div>
+
+<pre>flex column - row-axis baseline - the blue orthogonal item didn't participate in the first iteration</pre>
+<div class="grid column justifyItemsBaseline">
+  <div class="item1"            data-offset-x="16" data-offset-y="0"   data-expected-width="30" data-expected-height="50">É</div>
+  <div class="item2 verticalLR" data-offset-x="12" data-offset-y="50"  data-expected-width="20" data-expected-height="50">É</div>
+  <div class="item3 verticalLR" data-offset-x="0"  data-offset-y="100" data-expected-width="80" data-expected-height="100">É</div>
+</div>
+
+<pre>flex column - column-axis baseline - the blue relative sized item didn't participate in the first iterarion</pre>
+<div class="grid column justifyItemsBaseline">
+  <div class="item1 relativeWidth height50" data-offset-x="16" data-offset-y="0"   data-expected-width="40" data-expected-height="50"></div>
+  <div class="item2 verticalLR"             data-offset-x="12" data-offset-y="50"  data-expected-width="20" data-expected-height="50">É</div>
+  <div class="item3 verticalLR"             data-offset-x="0"  data-offset-y="100" data-expected-width="80" data-expected-height="100">É</div>
+</div>
+
+<pre>flex columns - both the blue relative sized and red orthogonal didn't participate in the first iteration</pre>
+<div class="grid column justifyItemsBaseline">
+  <div class="item1 relativeWidth height50" data-offset-x="16" data-offset-y="0"   data-expected-width="40" data-expected-height="50"></div>
+  <div class="item2"                        data-offset-x="16" data-offset-y="50"  data-expected-width="20" data-expected-height="50">É</div>
+  <div class="item3 verticalLR"             data-offset-x="0"  data-offset-y="100" data-expected-width="80" data-expected-height="100">É</div>
+</div>
+
+</body>
index 2f22feb..b04bb4c 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
index 5619394..766d140 100644 (file)
@@ -3,3 +3,12 @@ function evaluateStyleChange(element, phase, expectedProperty, expectedResult) {
     element.setAttribute(expectedProperty, expectedResult);
     checkLayout("." + phase, false);
 }
+function evaluateStyleChangeMultiple(phase, expectedResult) {
+    for (var item in expectedResult) {
+        var element = document.getElementById(item);
+        element.className += " " + phase;
+        for (var key in expectedResult[item])
+            element.setAttribute(key, expectedResult[item][key]);
+    }
+    checkLayout("." + phase, false);
+}
index 1a01df2..16aa548 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/test-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/test-expected.txt
new file mode 100644 (file)
index 0000000..f35506c
--- /dev/null
@@ -0,0 +1,11 @@
+Horizontal grid and verticalLR item with relative width
+É É ÉÉ
+
+FAIL .inline-grid 1 assert_equals: 
+<div class="inline-grid justifyItemsBaseline" data-expected-width="180" data-expected-height="300">
+  <div class="firstRowFirstColumn fixedWidth" data-offset-x="30" data-offset-y="0" data-expected-width="125" data-expected-height="100"></div>
+  <div class="secondRowFirstColumn bigFont paddingLeft verticalLR" data-offset-x="0" data-offset-y="100" data-expected-width="120" data-expected-height="200">É É ÉÉ</div>
+  <div class="autoRowSpanning2AutoColumn width25"></div>
+</div>
+width expected 180 but got 150
+
index a5062b7..24eba3c 100644 (file)
@@ -50,6 +50,14 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-034.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-035.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-implies-size-change-036.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-003.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-004.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-005.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-006.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-007.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-alignment-style-changes-008.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-002.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-column-axis-alignment-positioned-items-003.html
@@ -198,6 +206,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-gutters-011.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-gutters-012-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-gutters-012.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-gutters-013-expected.xht
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-gutters-013.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-002.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-row-axis-alignment-positioned-items-003.html
@@ -299,3 +309,4 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-alignment-stretch-vertical-rl-016.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-003.html
index 602e114..78fdd5e 100644 (file)
   grid-row: 3;
 }
 
+.thirdRowThirdColumn {
+  background-color: salmon;
+  grid-column: 3;
+  grid-row: 3;
+}
+
 .firstRowThirdColumn {
   background-color: magenta;
   grid-column: 3;
index ad08831..e35bb20 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/anonymous-grid-item-001.html
new file mode 100644 (file)
index 0000000..db88ce5
--- /dev/null
@@ -0,0 +1,8 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Test: Anonymous grid items - non-contiguous text runs - position:absolute</title>
+<link rel="author" title="Rune Lillesveen" href="mailto:futhark@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-items">
+<link rel="match" href="/css/css-flexbox/anonymous-flex-item-split-ref.html">
+<p>The words "Two" and "lines" should not be on the same line.</p>
+<div style="display:grid">Two <span style="position:absolute"></span>lines</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001-expected.txt
new file mode 100644 (file)
index 0000000..368e0b7
--- /dev/null
@@ -0,0 +1,24 @@
+
+PASS .grid 1 
+PASS .grid 2 
+PASS .grid 3 
+PASS .grid 4 
+PASS .grid 5 
+PASS .grid 6 
+Direction LTR
+
+Direction RTL
+
+Writing Mode vertical-lr
+
+Direction LTR
+
+Direction RTL
+
+Writing Mode vertical-rl
+
+Direction LTR
+
+Direction RTL
+
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html
new file mode 100644 (file)
index 0000000..cb5e8ee
--- /dev/null
@@ -0,0 +1,95 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Grid items with relative offsets</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-item-sizing">
+<meta name="assert" content="Checks that relative offests work for grid items.">
+<link rel="stylesheet" href="support/grid.css">
+<style>
+.grid {
+  position: relative;
+  grid: 90px 60px 30px / 200px 150px 100px;
+  inline-size: 600px;
+  block-size: 300px;
+}
+
+.grid > div { position: relative; }
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+
+<body onload="checkLayout('.grid')">
+
+<div id="log"></div>
+
+<h3>Direction LTR</h3>
+
+<div class="grid">
+  <div class="firstRowFirstColumn" style="left: 10px; top: 9px;"
+    data-offset-x="10" data-offest-y="9" data-expected-width="200" data-expected-height="90"></div>
+  <div class="secondRowSecondColumn" style="left: -15px; top: -12px;"
+    data-offset-x="185" data-offest-y="78" data-expected-width="150" data-expected-height="60"></div>
+  <div class="thirdRowThirdColumn" style="right: 30px; bottom: 21px;"
+    data-offset-x="320" data-offest-y="129" data-expected-width="100" data-expected-height="30"></div>
+</div>
+
+<h3>Direction RTL</h3>
+
+<div class="grid directionRTL">
+  <div class="firstRowFirstColumn" style="left: 10px; top: 9px;"
+    data-offset-x="410" data-offest-y="9" data-expected-width="200" data-expected-height="90"></div>
+  <div class="secondRowSecondColumn" style="left: -15px; top: -12px;"
+    data-offset-x="235" data-offest-y="78" data-expected-width="150" data-expected-height="60"></div>
+  <div class="thirdRowThirdColumn" style="right: 30px; bottom: 21px;"
+    data-offset-x="120" data-offest-y="129" data-expected-width="100" data-expected-height="30"></div>
+</div>
+
+<h2>Writing Mode vertical-lr</h2>
+
+<h3>Direction LTR</h3>
+
+<div class="grid verticalLR">
+  <div class="firstRowFirstColumn" style="left: 9px; top: 10px;"
+    data-offset-x="9" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -12px; top: -15px;"
+    data-offset-x="78" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 21px; bottom: 30px;"
+    data-offset-x="129" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
+<h3>Direction RTL</h3>
+
+<div class="grid verticalLR directionRTL">
+  <div class="firstRowFirstColumn" style="left: 9px; top: 10px;"
+    data-offset-x="9" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -12px; top: -15px;"
+    data-offset-x="78" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 21px; bottom: 30px;"
+    data-offset-x="129" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
+<h2>Writing Mode vertical-rl</h2>
+
+<h3>Direction LTR</h3>
+
+<div class="grid verticalRL">
+  <div class="firstRowFirstColumn" style="left: 9px; top: 10px;"
+    data-offset-x="219" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -12px; top: -15px;"
+    data-offset-x="138" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 21px; bottom: 30px;"
+    data-offset-x="99" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
+<h3>Direction RTL</h3>
+
+<div class="grid verticalRL directionRTL">
+  <div class="firstRowFirstColumn" style="left: 9px; top: 10px;"
+    data-offset-x="219" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -12px; top: -15px;"
+    data-offset-x="138" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 21px; bottom: 30px;"
+    data-offset-x="99" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002-expected.txt
new file mode 100644 (file)
index 0000000..d4825b5
--- /dev/null
@@ -0,0 +1,60 @@
+
+FAIL .grid 1 assert_equals: 
+<div class="grid verticalRL directionRTL">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;" data-offset-x="219" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;" data-offset-x="138" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;" data-offset-x="99" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+offsetLeft expected 219 but got 240
+FAIL .grid 2 assert_equals: 
+<div class="grid verticalRL">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;" data-offset-x="219" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;" data-offset-x="138" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;" data-offset-x="99" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+offsetLeft expected 219 but got 240
+FAIL .grid 3 assert_equals: 
+<div class="grid verticalLR directionRTL">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;" data-offset-x="9" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;" data-offset-x="78" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;" data-offset-x="129" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+offsetLeft expected 9 but got 30
+FAIL .grid 4 assert_equals: 
+<div class="grid verticalLR">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;" data-offset-x="9" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;" data-offset-x="78" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;" data-offset-x="129" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+offsetLeft expected 9 but got 30
+FAIL .grid 5 assert_equals: 
+<div class="grid directionRTL">
+  <div class="firstRowFirstColumn" style="left: 5%; top: 10%;" data-offset-x="410" data-offest-y="9" data-expected-width="200" data-expected-height="90"></div>
+  <div class="secondRowSecondColumn" style="left: -10%; top: -20%;" data-offset-x="235" data-offest-y="78" data-expected-width="150" data-expected-height="60"></div>
+  <div class="thirdRowThirdColumn" style="right: 30%; bottom: 70%;" data-offset-x="120" data-offest-y="129" data-expected-width="100" data-expected-height="30"></div>
+</div>
+offsetLeft expected 410 but got 430
+FAIL .grid 6 assert_equals: 
+<div class="grid">
+  <div class="firstRowFirstColumn" style="left: 5%; top: 10%;" data-offset-x="10" data-offest-y="9" data-expected-width="200" data-expected-height="90"></div>
+  <div class="secondRowSecondColumn" style="left: -10%; top: -20%;" data-offset-x="185" data-offest-y="78" data-expected-width="150" data-expected-height="60"></div>
+  <div class="thirdRowThirdColumn" style="right: 30%; bottom: 70%;" data-offset-x="320" data-offest-y="129" data-expected-width="100" data-expected-height="30"></div>
+</div>
+offsetLeft expected 10 but got 30
+Direction LTR
+
+Direction RTL
+
+Writing Mode vertical-lr
+
+Direction LTR
+
+Direction RTL
+
+Writing Mode vertical-rl
+
+Direction LTR
+
+Direction RTL
+
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html
new file mode 100644 (file)
index 0000000..d92fca3
--- /dev/null
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Grid items with relative offsets</title>
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-item-sizing">
+<meta name="assert" content="Checks that relative percentage offests work for grid items.">
+<link rel="stylesheet" href="support/grid.css">
+<style>
+.grid {
+  position: relative;
+  grid: 90px 60px 30px / 200px 150px 100px;
+  inline-size: 600px;
+  block-size: 300px;
+}
+
+.grid > div { position: relative; }
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/resources/check-layout-th.js"></script>
+
+<body onload="checkLayout('.grid')">
+
+<div id="log"></div>
+
+<h3>Direction LTR</h3>
+
+<div class="grid">
+  <div class="firstRowFirstColumn" style="left: 5%; top: 10%;"
+    data-offset-x="10" data-offest-y="9" data-expected-width="200" data-expected-height="90"></div>
+  <div class="secondRowSecondColumn" style="left: -10%; top: -20%;"
+    data-offset-x="185" data-offest-y="78" data-expected-width="150" data-expected-height="60"></div>
+  <div class="thirdRowThirdColumn" style="right: 30%; bottom: 70%;"
+    data-offset-x="320" data-offest-y="129" data-expected-width="100" data-expected-height="30"></div>
+</div>
+
+<h3>Direction RTL</h3>
+
+<div class="grid directionRTL">
+  <div class="firstRowFirstColumn" style="left: 5%; top: 10%;"
+    data-offset-x="410" data-offest-y="9" data-expected-width="200" data-expected-height="90"></div>
+  <div class="secondRowSecondColumn" style="left: -10%; top: -20%;"
+    data-offset-x="235" data-offest-y="78" data-expected-width="150" data-expected-height="60"></div>
+  <div class="thirdRowThirdColumn" style="right: 30%; bottom: 70%;"
+    data-offset-x="120" data-offest-y="129" data-expected-width="100" data-expected-height="30"></div>
+</div>
+
+<h2>Writing Mode vertical-lr</h2>
+
+<h3>Direction LTR</h3>
+
+<div class="grid verticalLR">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;"
+    data-offset-x="9" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;"
+    data-offset-x="78" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;"
+    data-offset-x="129" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
+<h3>Direction RTL</h3>
+
+<div class="grid verticalLR directionRTL">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;"
+    data-offset-x="9" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;"
+    data-offset-x="78" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;"
+    data-offset-x="129" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
+<h2>Writing Mode vertical-rl</h2>
+
+<h3>Direction LTR</h3>
+
+<div class="grid verticalRL">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;"
+    data-offset-x="219" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;"
+    data-offset-x="138" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;"
+    data-offset-x="99" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
+
+<h3>Direction RTL</h3>
+
+<div class="grid verticalRL directionRTL">
+  <div class="firstRowFirstColumn" style="left: 10%; top: 5%;"
+    data-offset-x="219" data-offest-y="10" data-expected-width="90" data-expected-height="200"></div>
+  <div class="secondRowSecondColumn" style="left: -20%; top: -10%;"
+    data-offset-x="138" data-offest-y="75" data-expected-width="60" data-expected-height="150"></div>
+  <div class="thirdRowThirdColumn" style="right: 70%; bottom: 30%;"
+    data-offset-x="99" data-offest-y="120" data-expected-width="30" data-expected-height="100"></div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-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-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html
new file mode 100644 (file)
index 0000000..3bf98c4
--- /dev/null
@@ -0,0 +1,16 @@
+<!DOCTYPE html>
+<title>Grid item with table with infinite max intrinsic inline size</title>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-item-sizing" title="6.2. Grid Item Sizing">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+<p>Test passes if there is a filled green square.</p>
+<div style="display:grid; grid-template-columns:max-content; width:100px; height:100px; background:green;">
+  <div>
+    <table style="height:50px; background:green;" cellpadding="0" cellspacing="0">
+      <tr>
+        <td style="width:100%; background:green;">&nbsp;</td>
+        <td style="background:green;">&nbsp;</td>
+      </tr>
+    </table>
+  </div>
+</div>
index 602e114..78fdd5e 100644 (file)
   grid-row: 3;
 }
 
+.thirdRowThirdColumn {
+  background-color: salmon;
+  grid-column: 3;
+  grid-row: 3;
+}
+
 .firstRowThirdColumn {
   background-color: magenta;
   grid-column: 3;
index 0836314..23a1008 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-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-grid/grid-items/table-with-infinite-max-intrinsic-width.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html
new file mode 100644 (file)
index 0000000..877e982
--- /dev/null
@@ -0,0 +1,14 @@
+<!DOCTYPE html>
+<title>Table grid item with infinite max intrinsic inline size</title>
+<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#grid-item-sizing" title="6.2. Grid Item Sizing">
+<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
+<p>Test passes if there is a filled green square.</p>
+<div style="display:grid; grid-template-columns:max-content; width:100px; height:100px; background:green;">
+  <table style="height:50px; background:green;" cellpadding="0" cellspacing="0">
+    <tr>
+      <td style="width:100%; background:green;">&nbsp;</td>
+      <td style="background:green;">&nbsp;</td>
+    </tr>
+  </table>
+</div>
index cbba2e1..3d37a02 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
@@ -104,6 +104,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-lr-002.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-percentage-paddings-vertical-rl-002.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-relative-offsets-002.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-sizing-alignment-001-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-items-sizing-alignment-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-layout-grid-in-grid-expected.html
@@ -199,8 +201,12 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-005.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-006-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/grid-z-axis-ordering-overlapped-items-006.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/item-with-table-with-infinite-max-intrinsic-width.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-replaced-subitems-001-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-replaced-subitems-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/percentage-size-subitems-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/ref-filled-green-100px-square-image.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html
new file mode 100644 (file)
index 0000000..1d89a21
--- /dev/null
@@ -0,0 +1,7 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test Reference</title>
+<link rel="author" title="Rune Lillesveen" href="mailto:futhark@chromium.org">
+<button style="display:grid">
+  First letter should not be red
+</button>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html
new file mode 100644 (file)
index 0000000..42014ad
--- /dev/null
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: '::first-letter' is ignored in button grid containers</title>
+<link rel="author" title="Rune Lillesveen" href="mailto:futhark@chromium.org">
+<link rel="help" href="http://www.w3.org/TR/css-grid-1/#grid-containers">
+<link rel="help" href="http://www.w3.org/TR/css3-selectors/#first-letter">
+<link rel="match" href="grid-container-ignores-first-letter-002-ref.html">
+<style>
+  /* The combination of button, grid, nested inlines, and ::first-letter crashes Blink */
+  button { display: grid }
+  button::first-letter { color: red }
+</style>
+<button>
+  <span>
+    <span>First letter should not be red</span>
+  </span>
+</button>
index 602e114..78fdd5e 100644 (file)
   grid-row: 3;
 }
 
+.thirdRowThirdColumn {
+  background-color: salmon;
+  grid-column: 3;
+  grid-row: 3;
+}
+
 .firstRowThirdColumn {
   background-color: magenta;
   grid-column: 3;
index 1a0ac7a..a5814da 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
index d9b45d8..e242bd0 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
@@ -21,6 +21,8 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-box-sizing-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-computed-value-display-floated-items-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-letter-002.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-container-ignores-first-line-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-display-grid-001-expected.xht
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-model/grid-display-grid-001.html
index 96a00db..5b15279 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance-expected.txt
new file mode 100644 (file)
index 0000000..daf8b56
--- /dev/null
@@ -0,0 +1,22 @@
+
+PASS Property grid-auto-columns has initial value auto 
+PASS Property grid-auto-columns does not inherit 
+PASS Property grid-auto-flow has initial value row 
+PASS Property grid-auto-flow does not inherit 
+PASS Property grid-auto-rows has initial value auto 
+PASS Property grid-auto-rows does not inherit 
+PASS Property grid-column-end has initial value auto 
+PASS Property grid-column-end does not inherit 
+PASS Property grid-column-start has initial value auto 
+PASS Property grid-column-start does not inherit 
+PASS Property grid-row-end has initial value auto 
+PASS Property grid-row-end does not inherit 
+PASS Property grid-row-start has initial value auto 
+PASS Property grid-row-start does not inherit 
+PASS Property grid-template-areas has initial value none 
+PASS Property grid-template-areas does not inherit 
+PASS Property grid-template-columns has initial value none 
+PASS Property grid-template-columns does not inherit 
+PASS Property grid-template-rows has initial value none 
+PASS Property grid-template-rows does not inherit 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance.html
new file mode 100644 (file)
index 0000000..eee86f7
--- /dev/null
@@ -0,0 +1,30 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Inheritance of CSS Grid Layout properties</title>
+<link rel="help" href="https://drafts.csswg.org/css-grid/#property-index">
+<meta name="assert" content="Properties inherit or not according to the spec.">
+<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>
+<script>
+assert_not_inherited('grid-auto-columns', 'auto', '10px');
+assert_not_inherited('grid-auto-flow', 'row', 'column dense');
+assert_not_inherited('grid-auto-rows', 'auto', '10px');
+assert_not_inherited('grid-column-end', 'auto', 'span 2');
+assert_not_inherited('grid-column-start', 'auto', 'span 2');
+assert_not_inherited('grid-row-end', 'auto', 'span 2');
+assert_not_inherited('grid-row-start', 'auto', 'span 2');
+assert_not_inherited('grid-template-areas', 'none', '"one two" "three four"');
+assert_not_inherited('grid-template-columns', 'none', '10px');
+assert_not_inherited('grid-template-rows', 'none', '10px');
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html
new file mode 100644 (file)
index 0000000..bf1b9b7
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<title>Reference</title>
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-columns: 40px 20px 40px;
+        align-content: center;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-column: 3;
+    }
+    .c {
+        grid-column: 2;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXX</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXX</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html
new file mode 100644 (file)
index 0000000..92c3bc2
--- /dev/null
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Filled Percentage Column, Shrinkwrap Width (via float)</title>
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#algo-overview">
+<link rel="match" href="references/grid-percent-cols-filled-shrinkwrap-001-ref.html">
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-columns: auto 20% auto;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-column: 3;
+    }
+    .c {
+        grid-column: 2;
+    }
+
+    .ref {
+        grid-template-columns: 40px 20px 40px;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXX</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXX</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html
new file mode 100644 (file)
index 0000000..c1b69af
--- /dev/null
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<title>Reference</title>
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-columns: 40px 20px 40px;
+        align-content: center;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-column: 3;
+    }
+    .c {
+        grid-column: span 3;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXXXX</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXXXX</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html
new file mode 100644 (file)
index 0000000..33c1650
--- /dev/null
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Spanned Percentage Column, Shrinkwrap Width (via float)</title>
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#algo-overview">
+<link rel="match" href="references/grid-percent-cols-spanned-shrinkwrap-001-ref.html">
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-columns: auto 20% auto;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-column: 3;
+    }
+    .c {
+        grid-column: span 3;
+    }
+
+    .ref {
+        grid-template-columns: 40px 20px 40px;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXXXX</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">XXXXX</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html
new file mode 100644 (file)
index 0000000..ee66077
--- /dev/null
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<title>Reference</title>
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-rows: 40px 20px 40px;
+        grid-auto-flow: column;
+        justify-content: center;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-row: 3;
+    }
+    .c {
+        grid-row: 2;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X<br>X<br>X</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html
new file mode 100644 (file)
index 0000000..58ab6a3
--- /dev/null
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Filled Percentage Row, Shrinkwrap Height</title>
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#algo-overview">
+<link rel="match" href="references/grid-percent-rows-filled-shrinkwrap-001-ref.html">
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-rows: auto 20% auto;
+        grid-auto-flow: column;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-row: 3;
+    }
+    .c {
+        grid-row: 2;
+    }
+
+    .ref {
+        grid-template-rows: 40px 20px 40px;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X<br>X<br>X</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html
new file mode 100644 (file)
index 0000000..ef6c78f
--- /dev/null
@@ -0,0 +1,39 @@
+<!DOCTYPE html>
+<title>Reference</title>
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-rows: 40px 20px 40px;
+        grid-auto-flow: column;
+        justify-content: center;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-row: 3;
+    }
+    .c {
+        grid-row: span 3;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X<br>X<br>X<br>X<br>X</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X<br>X<br>X<br>X<br>X</div>
+</div>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html
new file mode 100644 (file)
index 0000000..545d0a2
--- /dev/null
@@ -0,0 +1,47 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: Spanned Percentage Row, Shrinkwrap Height</title>
+<link rel="help" href="https://www.w3.org/TR/css-grid-1/#algo-overview">
+<link rel="match" href="references/grid-percent-rows-spanned-shrinkwrap-001-ref.html">
+<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
+<link rel="author" title="Elika J. Etemad" href="http://fantasai.inkedblade.net/contact">
+<style>
+    .grid {
+        display: grid;
+        float: left;
+        margin: 1em;
+        grid-template-rows: auto 20% auto;
+        grid-auto-flow: column;
+        justify-content: center;
+        border: solid silver;
+        font: 20px/1 Ahem;
+        color: transparent;
+    }
+    .grid > div {
+        background: blue;
+    }
+    .b {
+        grid-row: 3;
+    }
+    .c {
+        grid-row: span 3;
+    }
+
+    .ref {
+        grid-template-rows: 40px 20px 40px;
+    }
+</style>
+
+<p>Test passes if the two shapes below are identical
+
+<div class="grid">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X<br>X<br>X<br>X<br>X</div>
+</div>
+
+<div class="grid ref">
+    <div class="a">X</div>
+    <div class="b">X</div>
+    <div class="c">X<br>X<br>X<br>X<br>X</div>
+</div>
index b2f4a0f..f651e01 100644 (file)
@@ -23,5 +23,13 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-intrinsic-size-with-orthogonal-items.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-layout-free-space-unit-expected.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-layout-free-space-unit.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-filled-shrinkwrap-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-cols-spanned-shrinkwrap-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001-expected.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-stretch-respects-min-size-001-expected.xht
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/layout-algorithm/grid-stretch-respects-min-size-001.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-invalid-expected.txt
new file mode 100644 (file)
index 0000000..54a91e4
--- /dev/null
@@ -0,0 +1,25 @@
+
+PASS e.style['grid-area'] = "'string'" should not set the property value 
+PASS e.style['grid-row'] = "1.0" should not set the property value 
+PASS e.style['grid-column'] = "1 2" should not set the property value 
+PASS e.style['grid-row-start'] = "+-3" should not set the property value 
+PASS e.style['grid-column-start'] = "0" should not set the property value 
+PASS e.style['grid-row-end'] = "span" should not set the property value 
+PASS e.style['grid-column-end'] = "sPaN" should not set the property value 
+PASS e.style['grid-column-end'] = "\"1st\"" should not set the property value 
+PASS e.style['grid-column-end'] = "1st" should not set the property value 
+PASS e.style['grid-area'] = "auto / initial" should not set the property value 
+PASS e.style['grid-row'] = "auto / inherit" should not set the property value 
+PASS e.style['grid-column'] = "auto / unset" should not set the property value 
+PASS e.style['grid-area'] = "auto / auto / auto / auto / auto" should not set the property value 
+PASS e.style['grid-row'] = "1 / 2 / 3" should not set the property value 
+PASS e.style['grid-column'] = "a / b / c" should not set the property value 
+PASS e.style['grid-row-end'] = "span 1 / span 2" should not set the property value 
+PASS e.style['grid-area'] = "auto 2 auto 4" should not set the property value 
+PASS e.style['grid-row'] = "33 -A0 auto" should not set the property value 
+PASS e.style['grid-row'] = "auto i 2 j span 3 k" should not set the property value 
+PASS e.style['grid-row-end'] = "1 auto" should not set the property value 
+PASS e.style['grid-row-end'] = "span 1 auto" should not set the property value 
+PASS e.style['grid-row-end'] = "span auto 1" should not set the property value 
+PASS e.style['grid-row-end'] = "1 auto span" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-invalid.html
new file mode 100644 (file)
index 0000000..b989322
--- /dev/null
@@ -0,0 +1,45 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-area with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-area">
+<meta name="assert" content="grid-area supports only the grammar '<grid-line> [ / <grid-line> ]{0,3}'.">
+<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("grid-area", "'string'");
+test_invalid_value("grid-row", "1.0");
+test_invalid_value("grid-column", "1 2");
+test_invalid_value("grid-row-start", "+-3");
+test_invalid_value("grid-column-start", "0");
+test_invalid_value("grid-row-end", "span");
+test_invalid_value("grid-column-end", "sPaN");
+test_invalid_value("grid-column-end", '"1st"');
+test_invalid_value("grid-column-end", "1st");
+
+test_invalid_value("grid-area", "auto / initial");
+test_invalid_value("grid-row", "auto / inherit");
+test_invalid_value("grid-column", "auto / unset");
+
+test_invalid_value("grid-area", "auto / auto / auto / auto / auto");
+test_invalid_value("grid-row", "1 / 2 / 3")
+test_invalid_value("grid-column", "a / b / c");
+test_invalid_value("grid-row-end", "span 1 / span 2");
+test_invalid_value("grid-area", "auto 2 auto 4");
+test_invalid_value("grid-row", "33 -A0 auto");
+test_invalid_value("grid-row", "auto i 2 j span 3 k");
+
+
+// https://github.com/w3c/csswg-drafts/issues/2856
+test_invalid_value("grid-row-end", "1 auto");
+test_invalid_value("grid-row-end", "span 1 auto");
+test_invalid_value("grid-row-end", "span auto 1");
+test_invalid_value("grid-row-end", "1 auto span");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid-expected.txt
new file mode 100644 (file)
index 0000000..5e14b29
--- /dev/null
@@ -0,0 +1,38 @@
+
+FAIL e.style['grid-area'] = "auto" should set the property value assert_equals: serialization should be canonical expected "auto / auto / auto / auto" but got "auto auto auto auto"
+FAIL e.style['grid-area'] = "AuTo" should set the property value assert_equals: serialization should be canonical expected "auto / auto / auto / auto" but got "auto auto auto auto"
+FAIL e.style['grid-row'] = "auto" should set the property value assert_equals: serialization should be canonical expected "auto / auto" but got "auto auto"
+PASS e.style['grid-column-end'] = "AuTo" should set the property value 
+FAIL e.style['grid-area'] = "--a" should set the property value assert_equals: serialization should be canonical expected "--a / --a / --a / --a" but got "\"--a\" \"--a\" \"--a\" \"--a\""
+FAIL e.style['grid-row'] = "-zπ" should set the property value assert_equals: serialization should be canonical expected "-zπ / -zπ" but got "-zπ -zπ"
+PASS e.style['grid-row-start'] = "AZ" should set the property value 
+PASS e.style['grid-column-start'] = "-_π" should set the property value 
+PASS e.style['grid-row-end'] = "_9" should set the property value 
+FAIL e.style['grid-area'] = "1" should set the property value assert_equals: serialization should be canonical expected "1 / auto / auto / auto" but got "1 auto auto auto"
+FAIL e.style['grid-area'] = "+90 -a-" should set the property value assert_equals: serialization should be canonical expected "90 -a- / auto / auto / auto" but got "90 -a- auto auto auto"
+FAIL e.style['grid-row'] = "az 2" should set the property value assert_equals: serialization should be canonical expected "2 az / auto" but got "2 az auto"
+FAIL e.style['grid-column'] = "9" should set the property value assert_equals: serialization should be canonical expected "9 / auto" but got "9 auto"
+FAIL e.style['grid-column'] = "-19 zA" should set the property value assert_equals: serialization should be canonical expected "-19 zA / auto" but got "-19 zA auto"
+FAIL e.style['grid-column'] = "-A0 33" should set the property value assert_equals: serialization should be canonical expected "33 -A0 / auto" but got "33 -A0 auto"
+PASS e.style['grid-row-start'] = "-19" should set the property value 
+PASS e.style['grid-row-start'] = "9 -Z_" should set the property value 
+PASS e.style['grid-column-start'] = "+90" should set the property value 
+PASS e.style['grid-column-start'] = "Z -44" should set the property value 
+PASS e.style['grid-row-end'] = "1 -πA" should set the property value 
+PASS e.style['grid-column-end'] = "π_ +5" should set the property value 
+FAIL e.style['grid-area'] = "span 2 i" should set the property value assert_equals: serialization should be canonical expected "span 2 i / auto / auto / auto" but got "span 2 i auto auto auto"
+FAIL e.style['grid-area'] = "i 2 SpAn" should set the property value assert_equals: serialization should be canonical expected "span 2 i / auto / auto / auto" but got "span 2 i auto auto auto"
+FAIL e.style['grid-row'] = "span 2" should set the property value assert_equals: serialization should be canonical expected "span 2 / auto" but got "span 2 auto"
+FAIL e.style['grid-column'] = "i SpAn" should set the property value assert_equals: serialization should be canonical expected "span i / auto" but got "span i auto"
+PASS e.style['grid-row-start'] = "span i" should set the property value 
+PASS e.style['grid-column-start'] = "SpAn i 2" should set the property value 
+PASS e.style['grid-row-end'] = "2 i span" should set the property value 
+PASS e.style['grid-column-end'] = "2 SpAn" should set the property value 
+FAIL e.style['grid-area'] = "auto / i" should set the property value assert_equals: serialization should be canonical expected "auto / i / auto / i" but got "auto i auto i"
+FAIL e.style['grid-area'] = "auto / i / 2 j" should set the property value assert_equals: serialization should be canonical expected "auto / i / 2 j / i" but got "auto i 2 j i"
+FAIL e.style['grid-area'] = "auto / i / 2 j / span 3 k" should set the property value assert_equals: serialization should be canonical expected "auto / i / 2 j / span 3 k" but got "auto i 2 j span 3 k"
+FAIL e.style['grid-row'] = "auto / i" should set the property value assert_equals: serialization should be canonical expected "auto / i" but got "auto i"
+FAIL e.style['grid-column'] = "2 j / span 3 k" should set the property value assert_equals: serialization should be canonical expected "2 j / span 3 k" but got "2 j span 3 k"
+PASS e.style['grid-column-end'] = "\\31st" should set the property value 
+PASS e.style['grid-column-end'] = "\\31 st" should set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid.html
new file mode 100644 (file)
index 0000000..8e7d0d4
--- /dev/null
@@ -0,0 +1,67 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-area with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-area">
+<meta name="assert" content="grid-area supports the full grammar '<grid-line> [ / <grid-line> ]{0,3}'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// auto
+test_valid_value("grid-area", "auto", "auto / auto / auto / auto");
+test_valid_value("grid-area", "AuTo", "auto / auto / auto / auto");
+test_valid_value("grid-row", "auto", "auto / auto");
+test_valid_value("grid-column-end", "AuTo", "auto");
+
+// <custom-ident>
+test_valid_value("grid-area", "--a", "--a / --a / --a / --a");
+test_valid_value("grid-row", "-zπ", "-zπ / -zπ");
+test_valid_value("grid-row-start", "AZ");
+test_valid_value("grid-column-start", "-_π");
+test_valid_value("grid-row-end", "_9");
+
+
+// <integer> && <custom-ident>?
+test_valid_value("grid-area", "1", "1 / auto / auto / auto");
+test_valid_value("grid-area", "+90 -a-", "90 -a- / auto / auto / auto");
+test_valid_value("grid-row", "az 2", "2 az / auto");
+test_valid_value("grid-column", "9", "9 / auto");
+test_valid_value("grid-column", "-19 zA", "-19 zA / auto");
+test_valid_value("grid-column", "-A0 33", "33 -A0 / auto");
+test_valid_value("grid-row-start", "-19");
+test_valid_value("grid-row-start", "9 -Z_");
+test_valid_value("grid-column-start", "+90", "90");
+test_valid_value("grid-column-start", "Z -44", "-44 Z");
+test_valid_value("grid-row-end", "1 -πA");
+test_valid_value("grid-column-end", "π_ +5", "5 π_");
+
+// span && [ <integer> || <custom-ident> ]
+test_valid_value("grid-area", "span 2 i", "span 2 i / auto / auto / auto");
+test_valid_value("grid-area", "i 2 SpAn", "span 2 i / auto / auto / auto");
+test_valid_value("grid-row", "span 2", "span 2 / auto");
+test_valid_value("grid-column", "i SpAn", "span i / auto");
+test_valid_value("grid-row-start", "span i", "span i");
+test_valid_value("grid-column-start", "SpAn i 2", "span 2 i");
+test_valid_value("grid-row-end", "2 i span", "span 2 i");
+test_valid_value("grid-column-end", "2 SpAn", "span 2");
+
+// <grid-line> [ / <grid-line> ]{0,3}
+test_valid_value("grid-area", "auto / i", "auto / i / auto / i");
+test_valid_value("grid-area", "auto / i / 2 j", "auto / i / 2 j / i");
+test_valid_value("grid-area", "auto / i / 2 j / span 3 k");
+test_valid_value("grid-row", "auto / i");
+test_valid_value("grid-column", "2 j / span 3 k");
+
+
+// https://github.com/w3c/csswg-drafts/issues/2858
+// '\\31 st' in Blink, Firefox, '1st' in Edge, '"1st"' in Safari.
+test_valid_value("grid-column-end",  "\\31st", ["\\31 st", "1st", '"1st"']);
+test_valid_value("grid-column-end",  "\\31 st", ["\\31 st", "1st", '"1st"']);
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid-expected.txt
new file mode 100644 (file)
index 0000000..12bb792
--- /dev/null
@@ -0,0 +1,15 @@
+
+PASS e.style['grid-auto-columns'] = "none" should not set the property value 
+PASS e.style['grid-auto-columns'] = "-1px" should not set the property value 
+PASS e.style['grid-auto-columns'] = "-4%" should not set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(1px)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(1px, 2px, 3px)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(5fr, 1px)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(6px, -7%)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(8px, -9fr)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(-1px)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(1px, 2px)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(1px auto)" should not set the property value 
+PASS e.style['grid-auto-columns'] = "2em / 3em" should not set the property value 
+PASS e.style['grid-auto-columns'] = "auto, 10%" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html
new file mode 100644 (file)
index 0000000..e7a965f
--- /dev/null
@@ -0,0 +1,37 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-auto-columns with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-auto-columns">
+<meta name="assert" content="grid-auto-columns supports only the grammar '<track-size>+'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// <track-breadth>
+test_invalid_value("grid-auto-columns", "none");
+test_invalid_value("grid-auto-columns", "-1px");
+test_invalid_value("grid-auto-columns", "-4%");
+
+// minmax( <inflexible-breadth> , <track-breadth> )
+test_invalid_value("grid-auto-columns", "minmax(1px)");
+test_invalid_value("grid-auto-columns", "minmax(1px, 2px, 3px)");
+test_invalid_value("grid-auto-columns", "minmax(5fr, 1px)");
+test_invalid_value("grid-auto-columns", "minmax(6px, -7%)");
+test_invalid_value("grid-auto-columns", "minmax(8px, -9fr)");
+
+// fit-content( <length-percentage> )
+test_invalid_value("grid-auto-columns", "fit-content(-1px)");
+test_invalid_value("grid-auto-columns", "fit-content(1px, 2px)");
+test_invalid_value("grid-auto-columns", "fit-content(1px auto)");
+
+// <track-size>+
+test_invalid_value("grid-auto-columns", "2em / 3em");
+test_invalid_value("grid-auto-columns", "auto, 10%");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid-expected.txt
new file mode 100644 (file)
index 0000000..1545acd
--- /dev/null
@@ -0,0 +1,29 @@
+
+PASS e.style['grid-auto-columns'] = "1px" should set the property value 
+PASS e.style['grid-auto-columns'] = "2em" should set the property value 
+PASS e.style['grid-auto-columns'] = "calc(2em + 3ex)" should set the property value 
+PASS e.style['grid-auto-columns'] = "4%" should set the property value 
+PASS e.style['grid-auto-columns'] = "5fr" should set the property value 
+PASS e.style['grid-auto-columns'] = "min-content" should set the property value 
+PASS e.style['grid-auto-columns'] = "max-content" should set the property value 
+PASS e.style['grid-auto-columns'] = "auto" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(1px, 5fr)" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(2em, min-content)" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(calc(2em + 3ex), max-content)" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(4%, auto)" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(5vmin, 1px)" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(min-content, 2em)" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(max-content, calc(2em + 3ex))" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(auto, 4%)" should set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(1px)" should set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(2em)" should set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(calc(2em + 3ex))" should set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(4%)" should set the property value 
+PASS e.style['grid-auto-columns'] = "0px" should set the property value 
+PASS e.style['grid-auto-columns'] = "0%" should set the property value 
+PASS e.style['grid-auto-columns'] = "0fr" should set the property value 
+PASS e.style['grid-auto-columns'] = "minmax(auto, 0%)" should set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(0px)" should set the property value 
+PASS e.style['grid-auto-columns'] = "1px 2px 3px 0px" should set the property value 
+PASS e.style['grid-auto-columns'] = "fit-content(1px) minmax(2px, 3px) 4px" should set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html
new file mode 100644 (file)
index 0000000..ba1f5f6
--- /dev/null
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-auto-columns with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-auto-columns">
+<meta name="assert" content="grid-auto-columns supports the full grammar '<track-size>+'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// <track-breadth>
+// <track-breadth> = <length-percentage> | <flex> | min-content | max-content | auto
+test_valid_value("grid-auto-columns", "1px");
+test_valid_value("grid-auto-columns", "2em");
+test_valid_value("grid-auto-columns", "calc(2em + 3ex)");
+test_valid_value("grid-auto-columns", "4%");
+test_valid_value("grid-auto-columns", "5fr");
+test_valid_value("grid-auto-columns", "min-content");
+test_valid_value("grid-auto-columns", "max-content");
+test_valid_value("grid-auto-columns", "auto");
+
+// minmax( <inflexible-breadth> , <track-breadth> )
+// <inflexible-breadth> = <length-percentage> | min-content | max-content | auto
+test_valid_value("grid-auto-columns", "minmax(1px, 5fr)");
+test_valid_value("grid-auto-columns", "minmax(2em, min-content)");
+test_valid_value("grid-auto-columns", "minmax(calc(2em + 3ex), max-content)");
+test_valid_value("grid-auto-columns", "minmax(4%, auto)");
+test_valid_value("grid-auto-columns", "minmax(5vmin, 1px)");
+test_valid_value("grid-auto-columns", "minmax(min-content, 2em)");
+test_valid_value("grid-auto-columns", "minmax(max-content, calc(2em + 3ex))");
+test_valid_value("grid-auto-columns", "minmax(auto, 4%)");
+
+// fit-content( <length-percentage> )
+test_valid_value("grid-auto-columns", "fit-content(1px)");
+test_valid_value("grid-auto-columns", "fit-content(2em)");
+test_valid_value("grid-auto-columns", "fit-content(calc(2em + 3ex))");
+test_valid_value("grid-auto-columns", "fit-content(4%)");
+
+test_valid_value("grid-auto-columns", "0px");
+test_valid_value("grid-auto-columns", "0%");
+test_valid_value("grid-auto-columns", "0fr");
+test_valid_value("grid-auto-columns", "minmax(auto, 0%)");
+test_valid_value("grid-auto-columns", "fit-content(0px)");
+
+// <track-size>+
+test_valid_value("grid-auto-columns", "1px 2px 3px 0px");
+test_valid_value("grid-auto-columns", "fit-content(1px) minmax(2px, 3px) 4px");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid-expected.txt
new file mode 100644 (file)
index 0000000..7d33644
--- /dev/null
@@ -0,0 +1,5 @@
+
+PASS e.style['grid-auto-flow'] = "auto" should not set the property value 
+PASS e.style['grid-auto-flow'] = "row dense column" should not set the property value 
+PASS e.style['grid-auto-flow'] = "dense row dense" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html
new file mode 100644 (file)
index 0000000..a261e8e
--- /dev/null
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-auto-flow with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-auto-flow">
+<meta name="assert" content="grid-auto-flow supports only the grammar '[ row | column ] || dense'.">
+<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("grid-auto-flow", "auto");
+test_invalid_value("grid-auto-flow", "row dense column");
+test_invalid_value("grid-auto-flow", "dense row dense");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid-expected.txt
new file mode 100644 (file)
index 0000000..982dcb3
--- /dev/null
@@ -0,0 +1,7 @@
+
+PASS e.style['grid-auto-flow'] = "row" should set the property value 
+PASS e.style['grid-auto-flow'] = "column" should set the property value 
+PASS e.style['grid-auto-flow'] = "row dense" should set the property value 
+PASS e.style['grid-auto-flow'] = "dense column" should set the property value 
+PASS e.style['grid-auto-flow'] = "dense" should set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html
new file mode 100644 (file)
index 0000000..4270a3d
--- /dev/null
@@ -0,0 +1,24 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-auto-flow with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-auto-flow">
+<meta name="assert" content="grid-auto-flow supports the full grammar '[ row | column ] || dense'.">
+<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("grid-auto-flow", "row");
+test_valid_value("grid-auto-flow", "column");
+test_valid_value("grid-auto-flow", "row dense");
+test_valid_value("grid-auto-flow", "dense column", "column dense");
+
+// Blink/WebKit "dense", Edge/Firefox "row dense"
+test_valid_value("grid-auto-flow", "dense", ["dense", "row dense"]);
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid-expected.txt
new file mode 100644 (file)
index 0000000..d8df472
--- /dev/null
@@ -0,0 +1,14 @@
+
+PASS e.style['grid-auto-rows'] = "none" should not set the property value 
+PASS e.style['grid-auto-rows'] = "-1px" should not set the property value 
+PASS e.style['grid-auto-rows'] = "-4%" should not set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(1px)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(1px, 2px, 3px)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(5fr, 1px)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(6px, -7%)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(-1px)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(1px, 2px)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(1px auto)" should not set the property value 
+PASS e.style['grid-auto-rows'] = "2em / 3em" should not set the property value 
+PASS e.style['grid-auto-rows'] = "auto, 10%" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html
new file mode 100644 (file)
index 0000000..7fceaa0
--- /dev/null
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-auto-rows with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-auto-rows">
+<meta name="assert" content="grid-auto-rows supports only the grammar '<track-size>+'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// <track-breadth>
+test_invalid_value("grid-auto-rows", "none");
+test_invalid_value("grid-auto-rows", "-1px");
+test_invalid_value("grid-auto-rows", "-4%");
+
+// minmax( <inflexible-breadth> , <track-breadth> )
+test_invalid_value("grid-auto-rows", "minmax(1px)");
+test_invalid_value("grid-auto-rows", "minmax(1px, 2px, 3px)");
+test_invalid_value("grid-auto-rows", "minmax(5fr, 1px)");
+test_invalid_value("grid-auto-rows", "minmax(6px, -7%)");
+
+// fit-content( <length-percentage> )
+test_invalid_value("grid-auto-rows", "fit-content(-1px)");
+test_invalid_value("grid-auto-rows", "fit-content(1px, 2px)");
+test_invalid_value("grid-auto-rows", "fit-content(1px auto)");
+
+// <track-size>+
+test_invalid_value("grid-auto-rows", "2em / 3em");
+test_invalid_value("grid-auto-rows", "auto, 10%");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid-expected.txt
new file mode 100644 (file)
index 0000000..0ab3753
--- /dev/null
@@ -0,0 +1,29 @@
+
+PASS e.style['grid-auto-rows'] = "1px" should set the property value 
+PASS e.style['grid-auto-rows'] = "2em" should set the property value 
+PASS e.style['grid-auto-rows'] = "calc(2em + 3ex)" should set the property value 
+PASS e.style['grid-auto-rows'] = "4%" should set the property value 
+PASS e.style['grid-auto-rows'] = "5fr" should set the property value 
+PASS e.style['grid-auto-rows'] = "min-content" should set the property value 
+PASS e.style['grid-auto-rows'] = "max-content" should set the property value 
+PASS e.style['grid-auto-rows'] = "auto" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(1px, 5fr)" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(2em, min-content)" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(calc(2em + 3ex), max-content)" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(4%, auto)" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(5vmin, 1px)" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(min-content, 2em)" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(max-content, calc(2em + 3ex))" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(auto, 4%)" should set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(1px)" should set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(2em)" should set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(calc(2em + 3ex))" should set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(4%)" should set the property value 
+PASS e.style['grid-auto-rows'] = "0px" should set the property value 
+PASS e.style['grid-auto-rows'] = "0%" should set the property value 
+PASS e.style['grid-auto-rows'] = "0fr" should set the property value 
+PASS e.style['grid-auto-rows'] = "minmax(auto, 0%)" should set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(0px)" should set the property value 
+PASS e.style['grid-auto-rows'] = "1px 2px 3px 0px" should set the property value 
+PASS e.style['grid-auto-rows'] = "fit-content(1px) minmax(2px, 3px) 4px" should set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html
new file mode 100644 (file)
index 0000000..cf63e2b
--- /dev/null
@@ -0,0 +1,54 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-auto-rows with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-auto-rows">
+<meta name="assert" content="grid-auto-rows supports the full grammar '<track-size>+'.">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<script src="/css/support/parsing-testcommon.js"></script>
+</head>
+<body>
+<script>
+// <track-breadth>
+// <track-breadth> = <length-percentage> | <flex> | min-content | max-content | auto
+test_valid_value("grid-auto-rows", "1px");
+test_valid_value("grid-auto-rows", "2em");
+test_valid_value("grid-auto-rows", "calc(2em + 3ex)");
+test_valid_value("grid-auto-rows", "4%");
+test_valid_value("grid-auto-rows", "5fr");
+test_valid_value("grid-auto-rows", "min-content");
+test_valid_value("grid-auto-rows", "max-content");
+test_valid_value("grid-auto-rows", "auto");
+
+// minmax( <inflexible-breadth> , <track-breadth> )
+// <inflexible-breadth> = <length-percentage> | min-content | max-content | auto
+test_valid_value("grid-auto-rows", "minmax(1px, 5fr)");
+test_valid_value("grid-auto-rows", "minmax(2em, min-content)");
+test_valid_value("grid-auto-rows", "minmax(calc(2em + 3ex), max-content)");
+test_valid_value("grid-auto-rows", "minmax(4%, auto)");
+test_valid_value("grid-auto-rows", "minmax(5vmin, 1px)");
+test_valid_value("grid-auto-rows", "minmax(min-content, 2em)");
+test_valid_value("grid-auto-rows", "minmax(max-content, calc(2em + 3ex))");
+test_valid_value("grid-auto-rows", "minmax(auto, 4%)");
+
+// fit-content( <length-percentage> )
+test_valid_value("grid-auto-rows", "fit-content(1px)");
+test_valid_value("grid-auto-rows", "fit-content(2em)");
+test_valid_value("grid-auto-rows", "fit-content(calc(2em + 3ex))");
+test_valid_value("grid-auto-rows", "fit-content(4%)");
+
+test_valid_value("grid-auto-rows", "0px");
+test_valid_value("grid-auto-rows", "0%");
+test_valid_value("grid-auto-rows", "0fr");
+test_valid_value("grid-auto-rows", "minmax(auto, 0%)");
+test_valid_value("grid-auto-rows", "fit-content(0px)");
+
+// <track-size>+
+test_valid_value("grid-auto-rows", "1px 2px 3px 0px");
+test_valid_value("grid-auto-rows", "fit-content(1px) minmax(2px, 3px) 4px");
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid-expected.txt
new file mode 100644 (file)
index 0000000..e6e56bb
--- /dev/null
@@ -0,0 +1,5 @@
+
+PASS e.style['grid-template-areas'] = "auto" should not set the property value 
+PASS e.style['grid-template-areas'] = "none \"first\"" should not set the property value 
+PASS e.style['grid-template-areas'] = "\"first\" none" should not set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html
new file mode 100644 (file)
index 0000000..5bc70c5
--- /dev/null
@@ -0,0 +1,20 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-template-areas with invalid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-template-areas">
+<meta name="assert" content="grid-template-areas supports only the grammar 'none | <string>+'.">
+<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("grid-template-areas", "auto");
+test_invalid_value("grid-template-areas", 'none "first"');
+test_invalid_value("grid-template-areas", '"first" none');
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid-expected.txt b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid-expected.txt
new file mode 100644 (file)
index 0000000..4fbe1a0
--- /dev/null
@@ -0,0 +1,11 @@
+
+PASS e.style['grid-template-areas'] = "none" should set the property value 
+PASS e.style['grid-template-areas'] = "\"first\"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"first second\"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"1st 2nd 3rd\"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"first second\" \"third fourth\"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"first second\" \"third .\" \"1st 2nd\" \"3rd 4th\"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"  a  \t  b  \"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"c\td\"" should set the property value 
+PASS e.style['grid-template-areas'] = "\"first ...\"" should set the property value 
+
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html
new file mode 100644 (file)
index 0000000..8d8f682
--- /dev/null
@@ -0,0 +1,29 @@
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CSS Grid Layout Test: parsing grid-template-areas with valid values</title>
+<link rel="author" title="Eric Willigers" href="mailto:ericwilligers@chromium.org">
+<link rel="help" href="https://drafts.csswg.org/css-grid-1/#propdef-grid-template-areas">
+<meta name="assert" content="grid-template-areas supports the full grammar 'none | <string>+'.">
+<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("grid-template-areas", "none");
+test_valid_value("grid-template-areas", '"first"');
+test_valid_value("grid-template-areas", '"first second"');
+test_valid_value("grid-template-areas", '"1st 2nd 3rd"');
+test_valid_value("grid-template-areas", '"first second" "third fourth"');
+test_valid_value("grid-template-areas", '"first second" "third ." "1st 2nd" "3rd 4th"');
+
+// Firefox preserves specific whitespace and full stop sequences.
+// Other browsers consolidate to ' ' and '.'
+test_valid_value("grid-template-areas", '"  a  \t  b  "', '"a b"'); // Fails in Firefox
+test_valid_value("grid-template-areas", '"c\td"', ['"c d"', '"c\\9 d"']);
+test_valid_value("grid-template-areas", '"first ..."', ['"first ."', '"first ..."']);
+</script>
+</body>
+</html>
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/w3c-import.log b/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/w3c-import.log
new file mode 100644 (file)
index 0000000..844cd7f
--- /dev/null
@@ -0,0 +1,26 @@
+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-grid/parsing/grid-area-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-area-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-columns-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-flow-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-auto-rows-valid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-invalid.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/parsing/grid-template-areas-valid.html
index f3b8698..cd1c50e 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
index f7ec5ec..7f94799 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
index d621e5f..6f49e25 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
@@ -14,6 +14,7 @@ Property values requiring vendor prefixes:
 None
 ------------------------------------------------------------------------
 List of files:
-/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/OWNERS
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/META.yml
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/README.md
 /LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-layout-properties.html
+/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/inheritance.html
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/support/META.yml b/LayoutTests/imported/w3c/web-platform-tests/css/support/META.yml
new file mode 100644 (file)
index 0000000..c01aa3b
--- /dev/null
@@ -0,0 +1,3 @@
+suggested_reviewers:
+  - frivoal
+  - gsnedders
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/support/OWNERS b/LayoutTests/imported/w3c/web-platform-tests/css/support/OWNERS
deleted file mode 100644 (file)
index 729a248..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-@frivoal
-@gsnedders
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/support/computed-testcommon.js b/LayoutTests/imported/w3c/web-platform-tests/css/support/computed-testcommon.js
new file mode 100644 (file)
index 0000000..0999418
--- /dev/null
@@ -0,0 +1,22 @@
+'use strict';
+
+/**
+ * Create test that a CSS property computes to the expected value.
+ * The document element #target is used to perform the test.
+ *
+ * @param {string} property  The name of the CSS property being tested.
+ * @param {string} specified A specified value for the property.
+ * @param {string} computed  The expected computed value. If omitted,
+                             defaults to specified.
+ */
+function test_computed_value(property, specified, computed) {
+  if (!computed)
+    computed = specified;
+  test(() => {
+    if (!getComputedStyle(target)[property])
+      return;
+    target.style[property] = '';
+    target.style[property] = specified;
+    assert_equals(getComputedStyle(target)[property], computed);
+  }, "Property " + property + " value '" + specified + "' computes to '" + computed + "'");
+}
index 602e114..78fdd5e 100644 (file)
   grid-row: 3;
 }
 
+.thirdRowThirdColumn {
+  background-color: salmon;
+  grid-column: 3;
+  grid-row: 3;
+}
+
 .firstRowThirdColumn {
   background-color: magenta;
   grid-column: 3;
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/support/inheritance-testcommon.js b/LayoutTests/imported/w3c/web-platform-tests/css/support/inheritance-testcommon.js
new file mode 100644 (file)
index 0000000..9229f12
--- /dev/null
@@ -0,0 +1,86 @@
+'use strict';
+
+(function() {
+
+function assert_initial(property, initial) {
+  test(() => {
+    const target = document.getElementById('target');
+    if (!getComputedStyle(target)[property])
+      return;
+    target.style[property] = 'initial';
+    assert_equals(getComputedStyle(target)[property], initial);
+    target.style[property] = '';
+  }, 'Property ' + property + ' has initial value ' + initial);
+}
+
+/**
+ * Create tests that a CSS property inherits and has the given initial value.
+ *
+ * The current document must have an element #target within element #container.
+ *
+ * @param {string} property  The name of the CSS property being tested.
+ * @param {string} initial   The computed value for 'initial'.
+ * @param {string} other     An arbitrary value for the property that round
+ *                           trips and is distinct from the initial value.
+ */
+function assert_inherited(property, initial, other) {
+  assert_initial(property, initial);
+
+  test(() => {
+    const container = document.getElementById('container');
+    const target = document.getElementById('target');
+    if (!getComputedStyle(target)[property])
+      return;
+    container.style[property] = 'initial';
+    target.style[property] = 'unset';
+    assert_not_equals(getComputedStyle(container)[property], other);
+    assert_not_equals(getComputedStyle(target)[property], other);
+    container.style[property] = other;
+    assert_equals(getComputedStyle(container)[property], other);
+    assert_equals(getComputedStyle(target)[property], other);
+    target.style[property] = 'initial';
+    assert_equals(getComputedStyle(container)[property], other);
+    assert_not_equals(getComputedStyle(target)[property], other);
+    target.style[property] = 'inherit';
+    assert_equals(getComputedStyle(target)[property], other);
+    container.style[property] = '';
+    target.style[property] = '';
+  }, 'Property ' + property + ' inherits');
+}
+
+/**
+ * Create tests that a CSS property does not inherit, and that it has the
+ * given initial value.
+ *
+ * The current document must have an element #target within element #container.
+ *
+ * @param {string} property  The name of the CSS property being tested.
+ * @param {string} initial   The computed value for 'initial'.
+ * @param {string} other     An arbitrary value for the property that round
+ *                           trips and is distinct from the initial value.
+ */
+function assert_not_inherited(property, initial, other) {
+  assert_initial(property, initial);
+
+  test(() => {
+    const container = document.getElementById('container');
+    const target = document.getElementById('target');
+    if (!getComputedStyle(target)[property])
+      return;
+    container.style[property] = 'initial';
+    target.style[property] = 'unset';
+    assert_not_equals(getComputedStyle(container)[property], other);
+    assert_not_equals(getComputedStyle(target)[property], other);
+    container.style[property] = other;
+    assert_equals(getComputedStyle(container)[property], other);
+    assert_not_equals(getComputedStyle(target)[property], other);
+    target.style[property] = 'inherit';
+    assert_equals(getComputedStyle(target)[property], other);
+    container.style[property] = '';
+    target.style[property] = '';
+  }, 'Property ' + property + ' does not inherit');
+}
+
+window.assert_inherited = assert_inherited;
+window.assert_not_inherited = assert_not_inherited;
+})();
diff --git a/LayoutTests/imported/w3c/web-platform-tests/css/support/parsing-testcommon.js b/LayoutTests/imported/w3c/web-platform-tests/css/support/parsing-testcommon.js
new file mode 100644 (file)
index 0000000..7ecd588
--- /dev/null
@@ -0,0 +1,38 @@
+'use strict';
+
+// serializedValue can be the expected serialization of value,
+// or an array of permitted serializations,
+// or omitted if value should serialize as value.
+function test_valid_value(property, value, serializedValue) {
+    if (arguments.length < 3)
+        serializedValue = value;
+
+    var stringifiedValue = JSON.stringify(value);
+
+    test(function(){
+        var div = document.getElementById('target') || document.createElement('div');
+        div.style[property] = "";
+        div.style[property] = value;
+        var readValue = div.style.getPropertyValue(property);
+        assert_not_equals(readValue, "", "property should be set");
+        if (Array.isArray(serializedValue))
+            assert_in_array(readValue, serializedValue, "serialization should be sound");
+        else
+            assert_equals(readValue, serializedValue, "serialization should be canonical");
+
+        div.style[property] = readValue;
+        assert_equals(div.style.getPropertyValue(property), readValue, "serialization should round-trip");
+
+    }, "e.style['" + property + "'] = " + stringifiedValue + " should set the property value");
+}
+
+function test_invalid_value(property, value) {
+    var stringifiedValue = JSON.stringify(value);
+
+    test(function(){
+        var div = document.getElementById('target') || document.createElement('div');
+        div.style[property] = "";
+        div.style[property] = value;
+        assert_equals(div.style.getPropertyValue(property), "");
+    }, "e.style['" + property + "'] = " + stringifiedValue + " should not set the property value");
+}
index 0ae6cbd..9b8ebdd 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
index f95e9d7..a8060f2 100644 (file)
@@ -1,7 +1,7 @@
 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/w3c/web-platform-tests
+       https://github.com/web-platform-tests/wpt
 
 Then run the Tools/Scripts/import-w3c-tests in WebKit to reimport
 
@@ -23,7 +23,7 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/support/60x60-gg-rr.png
 /LayoutTests/imported/w3c/web-platform-tests/css/support/60x60-green.png
 /LayoutTests/imported/w3c/web-platform-tests/css/support/60x60-red.png
-/LayoutTests/imported/w3c/web-platform-tests/css/support/OWNERS
+/LayoutTests/imported/w3c/web-platform-tests/css/support/META.yml
 /LayoutTests/imported/w3c/web-platform-tests/css/support/README
 /LayoutTests/imported/w3c/web-platform-tests/css/support/a-green.css
 /LayoutTests/imported/w3c/web-platform-tests/css/support/alignment.css
@@ -31,10 +31,13 @@ List of files:
 /LayoutTests/imported/w3c/web-platform-tests/css/support/blue32x32.ico
 /LayoutTests/imported/w3c/web-platform-tests/css/support/c-red.css
 /LayoutTests/imported/w3c/web-platform-tests/css/support/cat.png
+/LayoutTests/imported/w3c/web-platform-tests/css/support/computed-testcommon.js
 /LayoutTests/imported/w3c/web-platform-tests/css/support/green.ico
 /LayoutTests/imported/w3c/web-platform-tests/css/support/grid.css
 /LayoutTests/imported/w3c/web-platform-tests/css/support/import-green.css
 /LayoutTests/imported/w3c/web-platform-tests/css/support/import-red.css
+/LayoutTests/imported/w3c/web-platform-tests/css/support/inheritance-testcommon.js
+/LayoutTests/imported/w3c/web-platform-tests/css/support/parsing-testcommon.js
 /LayoutTests/imported/w3c/web-platform-tests/css/support/pattern-grg-rgr-grg.png
 /LayoutTests/imported/w3c/web-platform-tests/css/support/pattern-grg-rrg-rgg.png
 /LayoutTests/imported/w3c/web-platform-tests/css/support/pattern-rgr-grg-rgr.png
diff --git a/LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt b/LayoutTests/platform/ios-simulator-wk2/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt
new file mode 100644 (file)
index 0000000..70dc3f3
--- /dev/null
@@ -0,0 +1,87 @@
+auto-sized rows - items with relative height
+ min-content-sized rows - items with relative height
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ max-content-sized rows - items with relative height
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ fit-content-sized rows - items with relative height
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ flexible-sized rows - items with relative height
+ flex max-function rows - items with relative height
+ auto-sized columns - items with relative width
+ min-content-sized columns - items with relative width
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ max-content-sized columns - items with relative width
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ fit-content-sized columns - items with relative width
+ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
+ flexible-sized columns - items with relative width
+ flex max-function columns - items with relative width
+baseline is not applied initially, but orthogonal items force repeating the track sizing and height is not indefinite in that phase.
+
+FAIL .inline-grid 1 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows max-flex-columns">
+        <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="-50" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+offsetLeft expected -50 but got 0
+FAIL .inline-grid 2 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows flex-columns">
+        <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+width expected 100 but got 300
+FAIL .inline-grid 3 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows fit-content-columns">
+        <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+width expected 80 but got 85
+FAIL .inline-grid 4 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows max-content-columns">
+        <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+width expected 80 but got 85
+FAIL .inline-grid 5 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows min-content-columns">
+        <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+width expected 80 but got 85
+FAIL .inline-grid 6 assert_equals: 
+<div class="inline-grid justifyItemsBaseline rows">
+        <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
+        <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
+        <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
+    </div>
+width expected 100 but got 300
+PASS .inline-grid 7 
+PASS .inline-grid 8 
+FAIL .inline-grid 9 assert_equals: 
+<div class="inline-grid alignItemsBaseline columns fit-content-rows">
+        <div class="firstRowFirstColumn" data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="160"></div>
+        <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+    </div>
+height expected 80 but got 85
+FAIL .inline-grid 10 assert_equals: 
+<div class="inline-grid alignItemsBaseline columns max-content-rows">
+        <div class="firstRowFirstColumn" data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="160"></div>
+        <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+    </div>
+height expected 80 but got 85
+FAIL .inline-grid 11 assert_equals: 
+<div class="inline-grid alignItemsBaseline columns min-content-rows">
+        <div class="firstRowFirstColumn" data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
+        <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="160"></div>
+        <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
+    </div>
+height expected 80 but got 85
+PASS .inline-grid 12 
+
diff --git a/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt b/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/css-grid/alignment/grid-self-baseline-not-applied-if-sizing-cyclic-dependency-001-expected.txt
deleted file mode 100644 (file)
index 3668d6c..0000000
+++ /dev/null
@@ -1,76 +0,0 @@
-auto-sized rows - items with relative height
- min-content-sized rows - items with relative height
-ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
- max-content-sized rows - items with relative height
-ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
- fit-content-sized rows - items with relative height
-ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
- flexible-sized rows - items with relative height
- auto-sized columns - items with relative width
- min-content-sized columns - items with relative width
-ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
- max-content-sized columns - items with relative width
-ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
- fit-content-sized columns - items with relative width
-ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É
- flexible-sized columns - items with relative width
-
-FAIL .inline-grid 1 assert_equals: 
-<div class="inline-grid justifyItemsBaseline rows flex-columns">
-  <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
-width expected 100 but got 400
-FAIL .inline-grid 2 assert_equals: 
-<div class="inline-grid justifyItemsBaseline rows fit-content-columns">
-  <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
-width expected 80 but got 85
-FAIL .inline-grid 3 assert_equals: 
-<div class="inline-grid justifyItemsBaseline rows max-content-columns">
-  <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
-width expected 80 but got 85
-FAIL .inline-grid 4 assert_equals: 
-<div class="inline-grid justifyItemsBaseline rows min-content-columns">
-  <div class="firstRowFirstColumn verticalRL" data-offset-x="0" data-offset-y="0" data-expected-width="80" data-expected-height="100">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="160" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="80" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
-width expected 80 but got 85
-FAIL .inline-grid 5 assert_equals: 
-<div class="inline-grid justifyItemsBaseline rows">
-  <div class="firstRowFirstColumn verticalRL width50" data-offset-x="0" data-offset-y="0" data-expected-width="50" data-expected-height="100"></div>
-  <div class="secondRowFirstColumn verticalRL width200Percent" data-offset-x="0" data-offset-y="100" data-expected-width="100" data-expected-height="100"></div>
-  <div class="firstRowSpanning2AutoColumn verticalRL width25" data-offset-x="50" data-offset-y="0" data-expected-width="25" data-expected-height="200"></div>
-</div>
-width expected 100 but got 300
-PASS .inline-grid 6 
-FAIL .inline-grid 7 assert_equals: 
-<div class="inline-grid alignItemsBaseline columns fit-content-rows">
-  <div class="firstRowFirstColumn" data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="160"></div>
-  <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
-</div>
-height expected 80 but got 85
-FAIL .inline-grid 8 assert_equals: 
-<div class="inline-grid alignItemsBaseline columns max-content-rows">
-  <div class="firstRowFirstColumn" data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="160"></div>
-  <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
-</div>
-height expected 80 but got 85
-FAIL .inline-grid 9 assert_equals: 
-<div class="inline-grid alignItemsBaseline columns min-content-rows">
-  <div class="firstRowFirstColumn" data-offset-x="0" data-offset-y="0" data-expected-width="100" data-expected-height="80">ÉÉ É ÉÉ ÉÉÉÉ É ÉÉ ÉÉÉ ÉÉ É</div>
-  <div class="firstRowSecondColumn height200Percent" data-offset-x="100" data-offset-y="0" data-expected-width="100" data-expected-height="160"></div>
-  <div class="autoRowAutoColumnSpanning2 height25" data-offset-x="0" data-offset-y="80" data-expected-width="200" data-expected-height="25"></div>
-</div>
-height expected 80 but got 85
-PASS .inline-grid 10 
-