Port two css-grid test files to WPT

The test that fails in Chromium related to calc() serialization is due to:
https://bugs.chromium.org/p/chromium/issues/detail?id=1050968

The test that fails in Firefox related to resolving percentage grid rows is due to:
https://bugzilla.mozilla.org/show_bug.cgi?id=1481876

BUG=767015

R=jfernandez@igalia.com


Change-Id: Ie219396d0e62181056ddf6c84b7b60f8251aeb43
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2436821
Commit-Queue: Ziran Sun <zsun@igalia.com>
Reviewed-by: Oriol Brufau <obrufau@igalia.com>
Reviewed-by: Javier Fernandez <jfernandez@igalia.com>
Reviewed-by: Manuel Rego <rego@igalia.com>
Cr-Commit-Position: refs/heads/master@{#823932}
diff --git a/third_party/blink/web_tests/TestExpectations b/third_party/blink/web_tests/TestExpectations
index 5bb0f8d..1e39234 100644
--- a/third_party/blink/web_tests/TestExpectations
+++ b/third_party/blink/web_tests/TestExpectations
@@ -3971,6 +3971,8 @@
 crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/layout-algorithm/grid-percent-rows-filled-shrinkwrap-001.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/layout-algorithm/grid-percent-rows-spanned-shrinkwrap-001.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/layout-algorithm/grid-stretch-respects-min-size-001.html [ Failure ]
+crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html [ Failure ]
+crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/parsing/grid-content-sized-columns-resolution.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/parsing/grid-template-columns-computed-implicit-track.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/parsing/grid-template-columns-computed-withcontent.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/external/wpt/css/css-grid/parsing/grid-template-columns-computed.html [ Failure ]
@@ -4002,9 +4004,7 @@
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-auto-columns-rows-update.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-auto-flow-resolution.html [ Failure Crash ]
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-auto-repeat-huge-grid.html [ Failure Crash ]
-crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-columns-rows-get-set-multiple.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-columns-rows-get-set.html [ Failure Crash ]
-crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-content-sized-columns-resolution.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-element-auto-repeat-get-set.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-element-border-grid-item.html [ Failure ]
 crbug.com/1045599 virtual/layout-ng-grid/fast/css-grid-layout/grid-element-border-padding-grid-item.html [ Failure ]
diff --git a/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple-expected.txt b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple-expected.txt
new file mode 100644
index 0000000..512bd0d
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple-expected.txt
@@ -0,0 +1,43 @@
+This is a testharness.js-based test.
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFixedElement' : grid-template-columns = '7px 11px', grid-template-rows = '17px 2px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithPercentElement' : grid-template-columns = '400px 800px', grid-template-rows = '150px 450px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithPercentWithoutSize' : grid-template-columns = '3.5px 7px', grid-template-rows = '4px 12px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithAutoElement' : grid-template-columns = '0px 17px', grid-template-rows = '0px 3px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithEMElement' : grid-template-columns = '100px 120px', grid-template-rows = '150px 170px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithThreeItems' : grid-template-columns = '15px 0px 100px', grid-template-rows = '120px 18px 0px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFitContentAndFitAvailable' : grid-template-columns = 'none', grid-template-rows = 'none'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxContent' : grid-template-columns = '0px 0px', grid-template-rows = '0px 0px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxContentWithChildrenElement' : grid-template-columns = '7px 17px', grid-template-rows = '16px 3px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxAndFixed' : grid-template-columns = '240px 15px', grid-template-rows = '120px 210px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithMinMaxAndMinMaxContent' : grid-template-columns = '240px 15px', grid-template-rows = '120px 210px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFractionFraction' : grid-template-columns = '320px 480px', grid-template-rows = '225px 375px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithFractionMinMax' : grid-template-columns = '45px 755px', grid-template-rows = '586px 14px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcCalc' : grid-template-columns = '200px 100px', grid-template-rows = '150px 75px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcAndFixed' : grid-template-columns = '400px 80px', grid-template-rows = '88px 150px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcAndMinMax' : grid-template-columns = '190px 80px', grid-template-rows = '150px 53px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithCalcInsideMinMax' : grid-template-columns = '400px 120px', grid-template-rows = '150px 175px'
+PASS Test getting grid-template-columns and grid-template-rows set through CSS for element 'gridWithAutoInsideMinMax' : grid-template-columns = '0px 30px', grid-template-rows = '132px 60px'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '18px 22px', element.style.gridTemplateColumns = '18px 22px', grid-template-rows = '66px 70px', element.style.gridTemplateRows = '66px 70px'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '440px 640px', element.style.gridTemplateColumns = '55% 80%', grid-template-rows = '240px 378px', element.style.gridTemplateRows = '40% 63%'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '0px 0px', element.style.gridTemplateColumns = 'auto auto', grid-template-rows = '0px 0px', element.style.gridTemplateRows = 'auto auto'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '0px 160px 22px', element.style.gridTemplateColumns = 'auto 16em 22px', grid-template-rows = '336px 100px 0px', element.style.gridTemplateRows = '56% 10em auto'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '160px 20px', element.style.gridTemplateColumns = '16em minmax(16px, 20px)', grid-template-rows = '90px 0px', element.style.gridTemplateRows = 'minmax(10%, 15%) auto'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '160px 640px', element.style.gridTemplateColumns = '16em 2fr', grid-template-rows = '600px 0px', element.style.gridTemplateRows = '14fr auto'
+PASS Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '25px 20px', element.style.gridTemplateColumns = 'calc(25px) calc(2em)', grid-template-rows = '0px 60px', element.style.gridTemplateRows = 'auto calc(10%)'
+FAIL Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '345px 92px', element.style.gridTemplateColumns = 'calc(25px + 40%) minmax(min-content, calc(10% + 12px))', grid-template-rows = '100px 0px', element.style.gridTemplateRows = 'minmax(calc(75% - 350px), max-content) auto' assert_equals: expected "calc(40% + 25px) minmax(min-content, calc(10% + 12px))" but got "calc(25px + 40%) minmax(min-content, calc(10% + 12px))"
+PASS Test setting wrong/invalid values through CSS
+PASS Test setting bad JS values: grid-template-columns = 'none auto', grid-template-rows = 'none auto'
+PASS Test setting bad JS values: grid-template-columns = 'none 16em', grid-template-rows = 'none 56%'
+PASS Test setting bad JS values: grid-template-columns = 'none none', grid-template-rows = 'none none'
+PASS Test setting bad JS values: grid-template-columns = 'auto none', grid-template-rows = 'auto none'
+PASS Test setting bad JS values: grid-template-columns = 'auto none 16em', grid-template-rows = 'auto 18em none'
+PASS Test setting bad JS values: grid-template-columns = '-webkit-fit-content -webkit-fit-content', grid-template-rows = '-webkit-fit-available -webkit-fit-available'
+PASS Test setting bad JS values: grid-template-columns = '-10px minmax(16px, 32px)', grid-template-rows = 'minmax(10%, 15%) -10vw'
+PASS Test setting bad JS values: grid-template-columns = '10px minmax(16px, -1vw)', grid-template-rows = 'minmax(-1%, 15%) 10vw'
+PASS Test setting bad JS values: grid-template-columns = '10px calc(16px 30px)', grid-template-rows = 'calc(25px + auto) 2em'
+PASS Test setting bad JS values: grid-template-columns = 'minmax(min-content, calc() 250px', grid-template-rows = 'calc(2em('
+PASS Test setting grid-template-columns and grid-template-rows to 'inherit' through JS
+PASS Test the default value
+PASS Test setting grid-template-columns and grid-template-rows to 'initial' through JS
+Harness: the test ran to completion.
+
diff --git a/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html
new file mode 100644
index 0000000..99af011
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-columns-rows-get-set-multiple.html
@@ -0,0 +1,322 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Julien Chaffraix" href="mailto:jchaffraix@webkit.org">
+<link rel="help" href="https://bugs.webkit.org/show_bug.cgi?id=73272">
+<link href="/css/support/width-keyword-classes.css" rel="stylesheet">
+<link href="/css/support/grid.css" rel="stylesheet">
+<link href="/css/support/alignment.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<link rel="help" href="https://drafts.csswg.org/css-grid/#track-sizing">
+<meta name="assert" content="Test that setting and getting multiple grid-template-columns and grid-template-rows works as expected">
+<style>
+/* Give an explicit size to the grid so that percentage grid tracks have a consistent resolution. */
+.definite {
+    width: 800px;
+    height: 600px;
+}
+
+.gridItem {
+    grid-column: 1;
+    grid-row: 1;
+    width: 7px;
+    height: 16px;
+}
+
+.gridItem2 {
+    grid-column: 2;
+    grid-row: 2;
+    width: 17px;
+    height: 3px;
+}
+
+.gridWithFixed {
+    grid-template-columns: 7px 11px;
+    grid-template-rows: 17px 2px;
+}
+
+.gridWithPercent {
+    grid-template-columns: 50% 100%;
+    grid-template-rows: 25% 75%;
+}
+.gridWithAuto {
+    grid-template-columns: auto auto;
+    grid-template-rows: auto auto;
+}
+.gridWithEM {
+    grid-template-columns: 10em 12em;
+    grid-template-rows: 15em 17em;
+    font: 10px Ahem;
+}
+.gridWithNoneAndAuto {
+    grid-template-columns: none auto;
+    grid-template-rows: none auto;
+}
+.gridNoneWithAndFixed {
+    grid-template-columns: none 15px;
+    grid-template-rows: none 22px;
+}
+.gridWithThreeItems {
+    grid-template-columns: 15px auto 10em;
+    grid-template-rows: 12em 18px auto;
+    font: 10px Ahem;
+}
+.gridWithFitContentAndFitAvailable {
+    grid-template-columns: -webkit-content-available;
+    grid-template-rows: -webkit-fit-content -webkit-fit-available;
+}
+.gridWithMinMaxContent {
+    grid-template-columns: min-content max-content;
+    grid-template-rows: max-content min-content;
+}
+.gridWithMinMaxAndFixed {
+    grid-template-columns: minmax(45px, 30%) 15px;
+    grid-template-rows: 12em minmax(35%, 10px);
+    font: 10px Ahem;
+}
+.gridWithMinMaxAndMinMaxContent {
+    grid-template-columns: minmax(min-content, 30%) 15px;
+    grid-template-rows: 12em minmax(35%, max-content);
+    font: 10px Ahem;
+}
+.gridWithFractionFraction {
+    grid-template-columns: 2fr 3fr;
+    grid-template-rows: 3fr 5fr;
+}
+.gridWithFractionMinMax {
+    grid-template-columns: minmax(min-content, 45px) 2fr;
+    grid-template-rows: 3fr minmax(14px, max-content);
+}
+.gridWithCalcCalc {
+    grid-template-columns: calc(200px) calc(10em);
+    grid-template-rows: calc(15em) calc(75px);
+    font: 10px Ahem;
+}
+.gridWithCalcAndFixed {
+    grid-template-columns: calc(50%) 8em;
+    grid-template-rows: 88px calc(25%);
+    font: 10px Ahem;
+}
+.gridWithCalcAndMinMax {
+    grid-template-columns: calc(30px + 20%) minmax(min-content, 80px);
+    grid-template-rows: minmax(25%, max-content) calc(10% - 7px);
+}
+.gridWithCalcInsideMinMax {
+    grid-template-columns: minmax(calc(23px + 10%), 400px) 12em;
+    grid-template-rows: calc(150px) minmax(5%, calc(50% - 125px));
+    font: 10px Ahem;
+}
+.gridWithAutoInsideMinMax {
+    grid-template-columns: minmax(auto, min-content) 30px;
+    grid-template-rows: calc(100px + 2em) minmax(10%, auto);
+}
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div class="grid definite gridWithFixed" id="gridWithFixedElement"></div>
+<div class="grid definite gridWithPercent" id="gridWithPercentElement"></div>
+<div class="grid min-content gridWithPercent" id="gridWithPercentWithoutSize">
+    <div class="gridItem"></div>
+</div>
+<div class="grid definite gridWithAuto contentStart" id="gridWithAutoElement">
+    <div class="gridItem2"></div>
+</div>
+<div class="grid definite gridWithEM" id="gridWithEMElement"></div>
+<div class="grid definite gridWithNoneAndAuto" id="gridWithNoneAndAuto"></div>
+<div class="grid definite gridWithNoneAndFixed" id="gridWithNoneAndFixed"></div>
+<div class="grid definite gridWithThreeItems contentStart" id="gridWithThreeItems"></div>
+<div class="grid definite gridWithFitContentAndFitAvailable" id="gridWithFitContentAndFitAvailable"></div>
+<div class="grid definite gridWithMinMaxContent" id="gridWithMinMaxContent"></div>
+<div class="grid definite gridWithMinMaxContent" id="gridWithMinMaxContentWithChildrenElement">
+    <div class="gridItem"></div>
+    <div class="gridItem2"></div>
+</div>
+<div class="grid definite gridWithMinMaxAndFixed" id="gridWithMinMaxAndFixed"></div>
+<div class="grid definite gridWithMinMaxAndMinMaxContent" id="gridWithMinMaxAndMinMaxContent"></div>
+<div class="grid definite gridWithFractionFraction" id="gridWithFractionFraction"></div>
+<div class="grid definite gridWithFractionMinMax" id="gridWithFractionMinMax"></div>
+<div class="grid definite gridWithCalcCalc" id="gridWithCalcCalc"></div>
+<div class="grid definite gridWithCalcAndFixed" id="gridWithCalcAndFixed"></div>
+<div class="grid definite gridWithCalcAndMinMax" id="gridWithCalcAndMinMax"></div>
+<div class="grid definite gridWithCalcInsideMinMax" id="gridWithCalcInsideMinMax"></div>
+<div class="grid definite gridWithAutoInsideMinMax contentStart" id="gridWithAutoInsideMinMax"></div>
+
+<script>
+function testGridDefinitionsValues(id, columnValue, rowValue)
+{
+    test(function(){
+        var element = document.getElementById(id);
+        var readColumnValue = getComputedStyle(element).gridTemplateColumns;
+        var readRowValue = getComputedStyle(element).gridTemplateRows;
+        assert_equals(readColumnValue, columnValue);
+        assert_equals(readRowValue, rowValue);
+    }, `Test getting grid-template-columns and grid-template-rows set through CSS for element '${id}' : grid-template-columns = '${columnValue}', grid-template-rows = '${rowValue}'`);
+}
+
+function testGridDefinitionsSetJSValues(
+  columnValue,
+  rowValue,
+  computedColumnValue = columnValue,
+  computedRowValue = rowValue,
+  jsColumnValue = columnValue,
+  jsRowValue = rowValue)
+{
+    test(function(){
+        window.element = document.createElement("div");
+        document.body.appendChild(element);
+        element.style.display = "grid";
+        element.style.width = "800px";
+        element.style.height = "600px";
+        element.style.justifyContent = "start";
+        element.style.alignContent = "start";
+        element.style.font = "10px Ahem"; // Used to resolve em font consistently.
+        element.style.gridTemplateColumns = columnValue;
+        element.style.gridTemplateRows = rowValue;
+        assert_equals(getComputedStyle(element).gridTemplateColumns, computedColumnValue);
+        assert_equals(element.style.gridTemplateColumns, jsColumnValue);
+        assert_equals(getComputedStyle(element).gridTemplateRows, computedRowValue);
+        assert_equals(element.style.gridTemplateRows, jsRowValue);
+        document.body.removeChild(element);
+    }, `Test getting and setting grid-template-rows and grid-template-columns through JS: grid-template-columns = '${computedColumnValue}', element.style.gridTemplateColumns = '${columnValue}', grid-template-rows = '${computedRowValue}', element.style.gridTemplateRows = '${rowValue}'`);
+}
+
+function testGridDefinitionsSetBadJSValues(columnValue, rowValue)
+{
+    test(function(){
+        window.element = document.createElement("div");
+        document.body.appendChild(element);
+        element.style.gridTemplateColumns = columnValue;
+        element.style.gridTemplateRows = rowValue;
+        assert_equals(getComputedStyle(element).gridTemplateColumns, "none");
+        assert_equals(getComputedStyle(element).gridTemplateRows, "none");
+        document.body.removeChild(element);
+    }, `Test setting bad JS values: grid-template-columns = '${columnValue}', grid-template-rows = '${rowValue}'`);
+}
+
+function testDefaultValue()
+{
+    test(function(){
+        var element = document.createElement("div");
+        document.body.appendChild(element);
+        assert_equals(getComputedStyle(element).gridTemplateColumns, "none");
+        assert_equals(getComputedStyle(element).gridTemplateRows, "none");
+        document.body.removeChild(element);
+    }, `Test the default value`);
+}
+
+function testWrongCSSValue()
+{
+    test(function(){
+        var gridWithNoneAndAuto = document.getElementById("gridWithNoneAndAuto");
+        assert_equals(getComputedStyle(gridWithNoneAndAuto).gridTemplateColumns, "none");
+        assert_equals(getComputedStyle(gridWithNoneAndAuto).gridTemplateRows, "none");
+
+        var gridWithNoneAndFixed = document.getElementById("gridWithNoneAndFixed");
+        assert_equals(getComputedStyle(gridWithNoneAndFixed).gridTemplateColumns, "none");
+        assert_equals(getComputedStyle(gridWithNoneAndFixed).gridTemplateRows, "none");
+    }, `Test setting wrong/invalid values through CSS`);
+}
+
+function testInherit()
+{
+    test(function(){
+        var parentElement = document.createElement("div");
+        document.body.appendChild(parentElement);
+        parentElement.style.display = "grid";
+        parentElement.style.width = "800px";
+        parentElement.style.height = "600px";
+        parentElement.style.font = "10px Ahem"; // Used to resolve em font consistently.
+        parentElement.style.gridTemplateColumns = "50px 1fr [last]";
+        parentElement.style.gridTemplateRows = "2em [middle] 45px";
+        assert_equals(getComputedStyle(parentElement).gridTemplateColumns, "50px 750px [last]");
+        assert_equals(getComputedStyle(parentElement).gridTemplateRows, "20px [middle] 45px");
+
+        element = document.createElement("div");
+        parentElement.appendChild(element);
+        element.style.display = "grid";
+        element.style.gridTemplateColumns = "inherit";
+        element.style.gridTemplateRows = "inherit";
+        assert_equals(getComputedStyle(element).gridTemplateColumns, "50px 0px [last]");
+        assert_equals(getComputedStyle(element).gridTemplateRows, "20px [middle] 45px");
+
+        document.body.removeChild(parentElement);
+    }, `Test setting grid-template-columns and grid-template-rows to 'inherit' through JS`);
+}
+
+function testInitial()
+{
+    test(function(){
+        element = document.createElement("div");
+        document.body.appendChild(element);
+        element.style.display = "grid";
+        element.style.width = "800px";
+        element.style.height = "600px";
+        element.style.gridTemplateColumns = "150% [middle] 55px";
+        element.style.gridTemplateRows = "1fr [line] 2fr [line]";
+        assert_equals(getComputedStyle(element).gridTemplateColumns, "1200px [middle] 55px");
+        assert_equals(getComputedStyle(element).gridTemplateRows, "200px [line] 400px [line]");
+
+        element.style.gridTemplateColumns = "initial";
+        element.style.gridTemplateRows = "initial";
+        assert_equals(getComputedStyle(element).gridTemplateColumns, "none");
+        assert_equals(getComputedStyle(element).gridTemplateRows, "none");
+
+        document.body.removeChild(element);
+    }, `Test setting grid-template-columns and grid-template-rows to 'initial' through JS`);
+}
+
+setup({ explicit_done: true });
+document.fonts.ready.then(() => {
+    testGridDefinitionsValues("gridWithFixedElement", "7px 11px", "17px 2px");
+    testGridDefinitionsValues("gridWithPercentElement", "400px 800px", "150px 450px");
+    // This test failing in Firefox is caused by https://bugzilla.mozilla.org/show_bug.cgi?id=1481876
+    testGridDefinitionsValues("gridWithPercentWithoutSize", "3.5px 7px", "4px 12px");
+    testGridDefinitionsValues("gridWithAutoElement", "0px 17px", "0px 3px");
+    testGridDefinitionsValues("gridWithEMElement", "100px 120px", "150px 170px");
+    testGridDefinitionsValues("gridWithThreeItems", "15px 0px 100px", "120px 18px 0px");
+    testGridDefinitionsValues("gridWithFitContentAndFitAvailable", "none", "none");
+    testGridDefinitionsValues("gridWithMinMaxContent", "0px 0px", "0px 0px");
+    testGridDefinitionsValues("gridWithMinMaxContentWithChildrenElement", "7px 17px", "16px 3px");
+    testGridDefinitionsValues("gridWithMinMaxAndFixed", "240px 15px", "120px 210px");
+    testGridDefinitionsValues("gridWithMinMaxAndMinMaxContent", "240px 15px", "120px 210px");
+    testGridDefinitionsValues("gridWithFractionFraction", "320px 480px", "225px 375px");
+    testGridDefinitionsValues("gridWithFractionMinMax", "45px 755px", "586px 14px");
+    testGridDefinitionsValues("gridWithCalcCalc", "200px 100px", "150px 75px");
+    testGridDefinitionsValues("gridWithCalcAndFixed", "400px 80px", "88px 150px");
+    testGridDefinitionsValues("gridWithCalcAndMinMax", "190px 80px", "150px 53px");
+    testGridDefinitionsValues("gridWithCalcInsideMinMax", "400px 120px", "150px 175px");
+    testGridDefinitionsValues("gridWithAutoInsideMinMax", "0px 30px", "132px 60px");
+
+    testGridDefinitionsSetJSValues("18px 22px", "66px 70px");
+    testGridDefinitionsSetJSValues("55% 80%", "40% 63%", "440px 640px", "240px 378px");
+    testGridDefinitionsSetJSValues("auto auto", "auto auto", "0px 0px", "0px 0px");
+    testGridDefinitionsSetJSValues("auto 16em 22px", "56% 10em auto", "0px 160px 22px", "336px 100px 0px");
+    testGridDefinitionsSetJSValues("16em minmax(16px, 20px)", "minmax(10%, 15%) auto", "160px 20px", "90px 0px");
+    testGridDefinitionsSetJSValues("16em 2fr", "14fr auto", "160px 640px", "600px 0px");
+    testGridDefinitionsSetJSValues("calc(25px) calc(2em)", "auto calc(10%)", "25px 20px", "0px 60px", "calc(25px) calc(2em)", "auto calc(10%)");
+    // This test failing in Chromium is caused by https://bugs.chromium.org/p/chromium/issues/detail?id=1050968
+    testGridDefinitionsSetJSValues("calc(25px + 40%) minmax(min-content, calc(10% + 12px))", "minmax(calc(75% - 350px), max-content) auto", "345px 92px", "100px 0px", "calc(40% + 25px) minmax(min-content, calc(10% + 12px))", "minmax(calc(75% - 350px), max-content) auto");
+
+    testWrongCSSValue();
+
+    testGridDefinitionsSetBadJSValues("none auto", "none auto");
+    testGridDefinitionsSetBadJSValues("none 16em", "none 56%");
+    testGridDefinitionsSetBadJSValues("none none", "none none");
+    testGridDefinitionsSetBadJSValues("auto none", "auto none");
+    testGridDefinitionsSetBadJSValues("auto none 16em", "auto 18em none");
+    testGridDefinitionsSetBadJSValues("-webkit-fit-content -webkit-fit-content", "-webkit-fit-available -webkit-fit-available");
+    // Negative values are not allowed.
+    testGridDefinitionsSetBadJSValues("-10px minmax(16px, 32px)", "minmax(10%, 15%) -10vw");
+    testGridDefinitionsSetBadJSValues("10px minmax(16px, -1vw)", "minmax(-1%, 15%) 10vw");
+    // Invalid expressions with calc
+    testGridDefinitionsSetBadJSValues("10px calc(16px 30px)", "calc(25px + auto) 2em");
+    testGridDefinitionsSetBadJSValues("minmax(min-content, calc() 250px", "calc(2em(");
+
+    testInherit();
+
+    testDefaultValue()
+
+    testInitial();
+
+    done();
+});
+</script>
diff --git a/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-content-sized-columns-resolution.html b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-content-sized-columns-resolution.html
new file mode 100644
index 0000000..411687a
--- /dev/null
+++ b/third_party/blink/web_tests/external/wpt/css/css-grid/parsing/grid-content-sized-columns-resolution.html
@@ -0,0 +1,386 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<link rel="author" title="Sergio Villar" href="mailto:svillar@igalia.com">
+<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=392200">
+<link href="/css/support/grid.css" rel="stylesheet">
+<link href="/css/support/alignment.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="/fonts/ahem.css">
+<link rel="help" href="https://drafts.csswg.org/css-grid/#track-sizing">
+<meta name="assert" content="Checks resolution of content sized grid columns and verifies that items are processed by ascending span to compute column breadths">
+<style>
+.grid {
+    font: 10px/1 Ahem;
+ }
+.gridWidth300 {
+    width: 300px;
+}
+.gridMinContentFixedAndAuto {
+    grid-template-columns: minmax(min-content, 15px) auto;
+}
+.gridMaxContentFixedAndAuto {
+    grid-template-columns: minmax(max-content, 15px) auto;
+}
+.gridAutoAndAuto {
+    grid-template-columns: auto auto;
+}
+.gridMinContentAndMinContentFixed {
+    grid-template-columns: min-content minmax(min-content, 30px);
+}
+.gridMinContentAndMaxContentFixed {
+    grid-template-columns: min-content minmax(max-content, 30px);
+}
+.gridMaxContentAndMinContent {
+    grid-template-columns: max-content min-content;
+}
+.gridFixedMinContentAndMaxContent {
+    grid-template-columns: minmax(10px, min-content) max-content;
+}
+.gridFixedMaxContentAndMinContent {
+    grid-template-columns: minmax(10px, max-content) min-content;
+}
+.gridAutoMinContent {
+    grid-template-columns: auto min-content;
+}
+.gridAutoMaxContent {
+    grid-template-columns: auto max-content;
+}
+.gridMaxContentAndMinContentFixed {
+    grid-template-columns: max-content minmax(min-content, 35px);
+}
+.gridMaxContentAndMaxContentFixed {
+    grid-template-columns: max-content minmax(max-content, 35px);
+}
+.gridMinContentFixedAndFixedFixedAndAuto {
+    grid-template-columns: minmax(min-content, 20px) minmax(20px, 30px) auto;
+}
+.gridAutoAndFixedFixedAndMaxContentFixed {
+    grid-template-columns: auto minmax(20px, 30px) minmax(max-content, 20px);
+}
+.gridMaxContentAndMaxContentFixedAndMaxContent {
+    grid-template-columns: max-content minmax(max-content, 20px) max-content;
+}
+.gridAutoAndMinContentFixedAndMinContent {
+    grid-template-columns: auto minmax(min-content, 30px) min-content;
+}
+
+</style>
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<div class="grid gridMinContentFixedAndAuto justifyContentStart" id="gridMinContentFixedAndAuto">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridAutoAndAuto justifyContentStart" id="gridAutoAndAuto">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridMinContentAndMinContentFixed" id="gridMinContentAndMinContentFixed">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridMaxContentAndMinContent" id="gridMaxContentAndMinContent">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridFixedMinContentAndMaxContent" id="gridFixedMinContentAndMaxContent">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridFixedMaxContentAndMinContent" id="gridFixedMaxContentAndMinContent">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridMinContentAndMaxContentFixed" id="gridMinContentAndMaxContentFixed">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentFixedAndAuto" id="gridMaxContentFixedAndAuto">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+    </div>
+</div>
+
+<div class="grid gridAutoMinContent justifyContentStart" id="gridAutoMinContent">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridAutoMaxContent justifyContentStart" id="gridAutoMaxContent">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentAndMinContentFixed" id="gridMaxContentAndMinContentFixed">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+    </div>
+</div>
+
+<div class="grid gridMaxContentAndMaxContentFixed" id="gridMaxContentAndMaxContentFixed">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+</div>
+
+<!-- Check that items are processed by ascending span instead of going track by track forbidding extra space distribution. -->
+<div class="constrainedContainer">
+    <div class="grid gridMinContentFixedAndAuto" id="gridMinContentFixedAndAutoUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowSecondColumn">XXXX XXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridAutoAndAuto" id="gridAutoAndAutoUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowSecondColumn">XXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMinContentAndMinContentFixed" id="gridMinContentAndMinContentFixedUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XX XX XX</div>
+        <div class="firstRowSecondColumn">XXXX XXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentAndMinContent" id="gridMaxContentAndMinContentUnsortedConstrained">
+        <div class="firstRowBothColumn">XXX XXX</div>
+        <div class="firstRowSecondColumn">XXXXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridFixedMinContentAndMaxContent" id="gridFixedMinContentAndMaxContentUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXXX XX</div>
+        <div class="firstRowSecondColumn">XXX</div>
+        <div class="firstRowSecondColumn">XXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridFixedMaxContentAndMinContent" id="gridFixedMaxContentAndMinContentUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">X X</div>
+        <div class="firstRowSecondColumn">XXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMinContentAndMaxContentFixed" id="gridMinContentAndMaxContentFixedUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowSecondColumn">XXXX XXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentFixedAndAuto" id="gridMaxContentFixedAndAutoUnsortedConstrained">
+        <div class="firstRowBothColumn">XX XX</div>
+        <div class="firstRowSecondColumn">XXXX</div>
+        <div class="firstRowSecondColumn">XXX XXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridAutoMinContent" id="gridAutoMinContentUnsortedConstrained">
+        <div class="firstRowBothColumn">XX XX XX XX</div>
+        <div class="firstRowSecondColumn">XXXXXX XXXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridAutoMaxContent" id="gridAutoMaxContentUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XXX XXX</div>
+        <div class="firstRowSecondColumn">XXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentAndMinContentFixed" id="gridMaxContentAndMinContentFixedUnsortedConstrained">
+        <div class="firstRowBothColumn">XXX XXX</div>
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowSecondColumn">XXXX XXXX</div>
+        <div class="firstRowSecondColumn">XX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentAndMaxContentFixed" id="gridMaxContentAndMaxContentFixedUnsortedConstrained">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XX XX XX XX</div>
+        <div class="firstRowSecondColumn">XXXXXXX</div>
+    </div>
+</div>
+
+<!-- Check that items are processed by ascending span instead of going track by track allowing extra space distribution. -->
+<div class="grid gridMinContentFixedAndAuto justifyContentStart" id="gridMinContentFixedAndAutoUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowSecondColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridAutoAndAuto justifyContentStart" id="gridAutoAndAutoUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowSecondColumn">XXX</div>
+</div>
+
+<div class="grid gridMinContentAndMinContentFixed" id="gridMinContentAndMinContentFixedUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowBothColumn">XX XX XX XX</div>
+    <div class="firstRowSecondColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridMaxContentAndMinContent" id="gridMaxContentAndMinContentUnsorted">
+    <div class="firstRowBothColumn">XXX XXX</div>
+    <div class="firstRowSecondColumn">XXXXXXX</div>
+</div>
+
+<div class="grid gridFixedMinContentAndMaxContent" id="gridFixedMinContentAndMaxContentUnsorted">
+    <div class="firstRowBothColumn">XXXXX XX</div>
+    <div class="firstRowSecondColumn">XXX</div>
+    <div class="firstRowSecondColumn">XXXXX</div>
+</div>
+
+<div class="grid gridFixedMaxContentAndMinContent" id="gridFixedMaxContentAndMinContentUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowBothColumn">X X</div>
+    <div class="firstRowSecondColumn">XXXX</div>
+</div>
+
+<div class="grid gridMinContentAndMaxContentFixed" id="gridMinContentAndMaxContentFixedUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowSecondColumn">XXXX XXXX</div>
+</div>
+
+<div class="grid gridMaxContentFixedAndAuto justifyContentStart" id="gridMaxContentFixedAndAutoUnsorted">
+    <div class="firstRowBothColumn">XX XX</div>
+    <div class="firstRowSecondColumn">XXXX</div>
+    <div class="firstRowSecondColumn">XXX XXX</div>
+</div>
+
+<div class="grid gridAutoMinContent justifyContentStart" id="gridAutoMinContentUnsorted">
+    <div class="firstRowBothColumn">XX XX XX XX</div>
+    <div class="firstRowSecondColumn">XXXXXX XXXXXX</div>
+</div>
+
+<div class="grid gridAutoMaxContent justifyContentStart" id="gridAutoMaxContentUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowBothColumn">XXX XXX</div>
+    <div class="firstRowSecondColumn">XXXXX</div>
+</div>
+
+<div class="grid gridMaxContentAndMinContentFixed" id="gridMaxContentAndMinContentFixedUnsorted">
+    <div class="firstRowBothColumn">XXX XXX</div>
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowSecondColumn">XXXX XXXX</div>
+    <div class="firstRowSecondColumn">XX</div>
+</div>
+
+<div class="grid gridMaxContentAndMaxContentFixed" id="gridMaxContentAndMaxContentFixedUnsorted">
+    <div class="firstRowBothColumn">XXXX XXXX</div>
+    <div class="firstRowBothColumn">XX XX XX XX</div>
+    <div class="firstRowSecondColumn">XXXXXXX</div>
+</div>
+
+<!-- The next four force the grid to grow only a particular subset of tracks above the limits -->
+<div class="constrainedContainer">
+    <div class="grid gridMinContentFixedAndAuto justifyContentStart" id="gridMinContentFixedAndAutoAboveLimits">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XXXXXXXXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMaxContentFixedAndAuto" id="gridMaxContentFixedAndAutoAboveLimits">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XXXXXXXXXXXXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridMinContentFixedAndFixedFixedAndAuto" id="gridMinContentFixedAndFixedFixedAndAuto">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XXXXXXXXXX</div>
+    </div>
+</div>
+
+<div class="constrainedContainer">
+    <div class="grid gridAutoAndFixedFixedAndMaxContentFixed" id="gridAutoAndFixedFixedAndMaxContentFixed">
+        <div class="firstRowBothColumn">XXXX XXXX</div>
+        <div class="firstRowBothColumn">XXXXXXXXXXXXXXX</div>
+    </div>
+</div>
+
+<div class="grid gridMaxContentAndMaxContentFixedAndMaxContent" id="gridMaxContentAndMaxContentFixedAndMaxContent">
+    <div style="grid-row: 1; grid-column: 1;">X X X</div>
+    <div style="grid-row: 1; grid-column: 3;">X X</div>
+    <div style="grid-row: 1; grid-column: 1 / -1;">XX XX XX XX XX</div>
+</div>
+
+<div class="grid gridAutoAndMinContentFixedAndMinContent justifyContentStart" id="gridAutoAndMinContentFixedAndMinContent">
+    <div style="grid-row: 1; grid-column: 1;">XX</div>
+    <div style="grid-row: 1; grid-column: 1 / -1;">XXXXXXXXXXXXXXX</div>
+    <div style="grid-row: 1; grid-column: 3;">XXX XXX</div>
+</div>
+
+<script>
+function testGridColumnsValues(id, computedColumnValue) {
+    test(function(){
+        var div = document.getElementById(id);
+        var readValue = getComputedStyle(div).gridTemplateColumns;
+        assert_equals(readValue, computedColumnValue);
+    }, `Element '${id}' grid-template-columns value computes to '${computedColumnValue}'`);
+}
+
+setup({ explicit_done: true });
+document.fonts.ready.then(() => {
+    testGridColumnsValues("gridMinContentFixedAndAuto", "15px 75px");
+    testGridColumnsValues("gridAutoAndAuto", "45px 45px");
+    testGridColumnsValues("gridMinContentAndMinContentFixed", "20px 30px");
+    testGridColumnsValues("gridMaxContentAndMinContent", "70px 20px");
+    testGridColumnsValues("gridFixedMinContentAndMaxContent", "10px 80px");
+    testGridColumnsValues("gridFixedMaxContentAndMinContent", "60px 30px");
+    testGridColumnsValues("gridMinContentAndMaxContentFixed", "20px 70px");
+    testGridColumnsValues("gridMaxContentFixedAndAuto", "65px 25px");
+    testGridColumnsValues("gridAutoMinContent", "70px 20px");
+    testGridColumnsValues("gridAutoMaxContent", "20px 70px");
+    testGridColumnsValues("gridMaxContentAndMinContentFixed", "70px 20px");
+    testGridColumnsValues("gridMaxContentAndMaxContentFixed", "55px 35px");
+
+    // Check that items are processed by ascending span to compute track breadths forbidding extra space distribution.
+    testGridColumnsValues("gridMinContentFixedAndAutoUnsortedConstrained", "0px 40px");
+    testGridColumnsValues("gridAutoAndAutoUnsortedConstrained", "10px 30px");
+    testGridColumnsValues("gridMinContentAndMinContentFixedUnsortedConstrained", "0px 40px");
+    testGridColumnsValues("gridMaxContentAndMinContentUnsortedConstrained", "0px 70px");
+    testGridColumnsValues("gridFixedMinContentAndMaxContentUnsortedConstrained", "10px 70px");
+    testGridColumnsValues("gridFixedMaxContentAndMinContentUnsortedConstrained", "10px 40px");
+    testGridColumnsValues("gridMinContentAndMaxContentFixedUnsortedConstrained", "0px 90px");
+    testGridColumnsValues("gridMaxContentFixedAndAutoUnsortedConstrained", "10px 40px");
+    testGridColumnsValues("gridAutoMinContentUnsortedConstrained", "0px 60px");
+    testGridColumnsValues("gridAutoMaxContentUnsortedConstrained", "0px 90px");
+    testGridColumnsValues("gridMaxContentAndMinContentFixedUnsortedConstrained", "50px 40px");
+    testGridColumnsValues("gridMaxContentAndMaxContentFixedUnsortedConstrained", "40px 70px");
+
+    // Check that items are processed by ascending span to compute track breadths allowing extra space distribution.
+    testGridColumnsValues("gridMinContentFixedAndAutoUnsorted", "15px 90px");
+    testGridColumnsValues("gridAutoAndAutoUnsorted", "60px 30px");
+    testGridColumnsValues("gridMinContentAndMinContentFixedUnsorted", "0px 40px");
+    testGridColumnsValues("gridMaxContentAndMinContentUnsorted", "0px 70px");
+    testGridColumnsValues("gridFixedMinContentAndMaxContentUnsorted", "10px 70px");
+    testGridColumnsValues("gridFixedMaxContentAndMinContentUnsorted", "50px 40px");
+    testGridColumnsValues("gridMinContentAndMaxContentFixedUnsorted", "0px 90px");
+    testGridColumnsValues("gridMaxContentFixedAndAutoUnsorted", "15px 70px");
+    testGridColumnsValues("gridAutoMinContentUnsorted", "50px 60px");
+    testGridColumnsValues("gridAutoMaxContentUnsorted", "0px 90px");
+    testGridColumnsValues("gridMaxContentAndMinContentFixedUnsorted", "50px 40px");
+    testGridColumnsValues("gridMaxContentAndMaxContentFixedUnsorted", "40px 70px");
+
+    // Check that only a subset of tracks grow above track limits.
+    testGridColumnsValues("gridMinContentFixedAndAutoAboveLimits", "15px 95px");
+    testGridColumnsValues("gridMaxContentFixedAndAutoAboveLimits", "15px 135px");
+    testGridColumnsValues("gridMinContentFixedAndFixedFixedAndAuto", "20px 20px 60px");
+    testGridColumnsValues("gridAutoAndFixedFixedAndMaxContentFixed", "110px 20px 20px");
+    testGridColumnsValues("gridMaxContentAndMaxContentFixedAndMaxContent", "70px 20px 50px");
+    testGridColumnsValues("gridAutoAndMinContentFixedAndMinContent", "55px 30px 65px");
+
+    done();
+});
+</script>
diff --git a/third_party/blink/web_tests/fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt b/third_party/blink/web_tests/fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt
deleted file mode 100644
index f44139c..0000000
--- a/third_party/blink/web_tests/fast/css-grid-layout/grid-columns-rows-get-set-multiple-expected.txt
+++ /dev/null
@@ -1,139 +0,0 @@
-Test that setting and getting grid-template-columns and grid-template-rows works as expected
-
-On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
-
-Test getting |grid-template-columns| and |grid-template-rows| set through CSS
-PASS window.getComputedStyle(gridWithFixedElement, '').getPropertyValue('grid-template-columns') is "7px 11px"
-PASS window.getComputedStyle(gridWithFixedElement, '').getPropertyValue('grid-template-rows') is "17px 2px"
-PASS window.getComputedStyle(gridWithPercentElement, '').getPropertyValue('grid-template-columns') is "400px 800px"
-PASS window.getComputedStyle(gridWithPercentElement, '').getPropertyValue('grid-template-rows') is "150px 450px"
-PASS window.getComputedStyle(gridWithPercentWithoutSize, '').getPropertyValue('grid-template-columns') is "3.5px 7px"
-PASS window.getComputedStyle(gridWithPercentWithoutSize, '').getPropertyValue('grid-template-rows') is "4px 12px"
-PASS window.getComputedStyle(gridWithAutoElement, '').getPropertyValue('grid-template-columns') is "0px 17px"
-PASS window.getComputedStyle(gridWithAutoElement, '').getPropertyValue('grid-template-rows') is "0px 3px"
-PASS window.getComputedStyle(gridWithEMElement, '').getPropertyValue('grid-template-columns') is "100px 120px"
-PASS window.getComputedStyle(gridWithEMElement, '').getPropertyValue('grid-template-rows') is "150px 170px"
-PASS window.getComputedStyle(gridWithThreeItems, '').getPropertyValue('grid-template-columns') is "15px 0px 100px"
-PASS window.getComputedStyle(gridWithThreeItems, '').getPropertyValue('grid-template-rows') is "120px 18px 0px"
-PASS window.getComputedStyle(gridWithPercentAndViewportPercent, '').getPropertyValue('grid-template-columns') is "400px 120px"
-PASS window.getComputedStyle(gridWithPercentAndViewportPercent, '').getPropertyValue('grid-template-rows') is "210px 168px"
-PASS window.getComputedStyle(gridWithFitContentAndFitAvailable, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(gridWithFitContentAndFitAvailable, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(gridWithMinMaxContent, '').getPropertyValue('grid-template-columns') is "0px 0px"
-PASS window.getComputedStyle(gridWithMinMaxContent, '').getPropertyValue('grid-template-rows') is "0px 0px"
-PASS window.getComputedStyle(gridWithMinMaxContentWithChildrenElement, '').getPropertyValue('grid-template-columns') is "7px 17px"
-PASS window.getComputedStyle(gridWithMinMaxContentWithChildrenElement, '').getPropertyValue('grid-template-rows') is "16px 3px"
-PASS window.getComputedStyle(gridWithMinMaxAndFixed, '').getPropertyValue('grid-template-columns') is "240px 15px"
-PASS window.getComputedStyle(gridWithMinMaxAndFixed, '').getPropertyValue('grid-template-rows') is "120px 210px"
-PASS window.getComputedStyle(gridWithMinMaxAndMinMaxContent, '').getPropertyValue('grid-template-columns') is "240px 15px"
-PASS window.getComputedStyle(gridWithMinMaxAndMinMaxContent, '').getPropertyValue('grid-template-rows') is "120px 210px"
-PASS window.getComputedStyle(gridWithFractionFraction, '').getPropertyValue('grid-template-columns') is "320px 480px"
-PASS window.getComputedStyle(gridWithFractionFraction, '').getPropertyValue('grid-template-rows') is "225px 375px"
-PASS window.getComputedStyle(gridWithFractionMinMax, '').getPropertyValue('grid-template-columns') is "45px 755px"
-PASS window.getComputedStyle(gridWithFractionMinMax, '').getPropertyValue('grid-template-rows') is "586px 14px"
-PASS window.getComputedStyle(gridWithCalcCalc, '').getPropertyValue('grid-template-columns') is "200px 100px"
-PASS window.getComputedStyle(gridWithCalcCalc, '').getPropertyValue('grid-template-rows') is "150px 75px"
-PASS window.getComputedStyle(gridWithCalcAndFixed, '').getPropertyValue('grid-template-columns') is "400px 80px"
-PASS window.getComputedStyle(gridWithCalcAndFixed, '').getPropertyValue('grid-template-rows') is "88px 150px"
-PASS window.getComputedStyle(gridWithCalcAndMinMax, '').getPropertyValue('grid-template-columns') is "190px 80px"
-PASS window.getComputedStyle(gridWithCalcAndMinMax, '').getPropertyValue('grid-template-rows') is "150px 53px"
-PASS window.getComputedStyle(gridWithCalcInsideMinMax, '').getPropertyValue('grid-template-columns') is "400px 120px"
-PASS window.getComputedStyle(gridWithCalcInsideMinMax, '').getPropertyValue('grid-template-rows') is "150px 175px"
-PASS window.getComputedStyle(gridWithAutoInsideMinMax, '').getPropertyValue('grid-template-columns') is "0px 30px"
-PASS window.getComputedStyle(gridWithAutoInsideMinMax, '').getPropertyValue('grid-template-rows') is "132px 60px"
-
-
-Test the initial value
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is 'none'
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is 'none'
-
-
-Test getting and setting grid-template-rows and grid-template-columns through JS
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "18px 22px"
-PASS element.style.gridTemplateColumns is "18px 22px"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "66px 70px"
-PASS element.style.gridTemplateRows is "66px 70px"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "440px 640px"
-PASS element.style.gridTemplateColumns is "55% 80%"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "240px 378px"
-PASS element.style.gridTemplateRows is "40% 63%"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "0px 0px"
-PASS element.style.gridTemplateColumns is "auto auto"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "0px 0px"
-PASS element.style.gridTemplateRows is "auto auto"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "0px 160px 22px"
-PASS element.style.gridTemplateColumns is "auto 16em 22px"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "336px 100px 0px"
-PASS element.style.gridTemplateRows is "56% 10em auto"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "160px 20px"
-PASS element.style.gridTemplateColumns is "16em minmax(16px, 20px)"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "90px 0px"
-PASS element.style.gridTemplateRows is "minmax(10%, 15%) auto"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "160px 640px"
-PASS element.style.gridTemplateColumns is "16em 2fr"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "600px 0px"
-PASS element.style.gridTemplateRows is "14fr auto"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "400px 96px"
-PASS element.style.gridTemplateColumns is "50% 12vw"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "30px 510px"
-PASS element.style.gridTemplateRows is "5% 85vh"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "25px 20px"
-PASS element.style.gridTemplateColumns is "calc(25px) calc(2em)"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "0px 60px"
-PASS element.style.gridTemplateRows is "auto calc(10%)"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "345px 92px"
-PASS element.style.gridTemplateColumns is "calc(25px + 40%) minmax(min-content, calc(10% + 12px))"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "100px 0px"
-PASS element.style.gridTemplateRows is "minmax(calc(75% - 350px), max-content) auto"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "0px 16px"
-PASS element.style.gridTemplateColumns is "auto minmax(16px, auto)"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "90px 80px"
-PASS element.style.gridTemplateRows is "minmax(auto, 15%) 10vw"
-
-
-Test getting wrong values set from CSS
-PASS getComputedStyle(gridWithNoneAndAuto, '').getPropertyValue('grid-template-columns') is 'none'
-PASS getComputedStyle(gridWithNoneAndAuto, '').getPropertyValue('grid-template-rows') is 'none'
-PASS getComputedStyle(gridWithNoneAndFixed, '').getPropertyValue('grid-template-columns') is 'none'
-PASS getComputedStyle(gridWithNoneAndFixed, '').getPropertyValue('grid-template-rows') is 'none'
-
-
-Test setting and getting wrong values from JS
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "none"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "none"
-
-
-Test setting grid-template-columns and grid-template-rows to 'inherit' through JS
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "50px 750px [last]"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "20px [middle] 45px"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "50px 0px [last]"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "20px [middle] 45px"
-
-
-Test setting grid-template-columns and grid-template-rows to 'initial' through JS
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-columns') is "1200px [middle] 55px"
-PASS window.getComputedStyle(element, '').getPropertyValue('grid-template-rows') is "200px [line] 400px [line]"
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-columns') is 'none'
-PASS getComputedStyle(element, '').getPropertyValue('grid-template-rows') is 'none'
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
diff --git a/third_party/blink/web_tests/fast/css-grid-layout/grid-columns-rows-get-set-multiple.html b/third_party/blink/web_tests/fast/css-grid-layout/grid-columns-rows-get-set-multiple.html
deleted file mode 100644
index 0546eae..0000000
--- a/third_party/blink/web_tests/fast/css-grid-layout/grid-columns-rows-get-set-multiple.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head>
-<link href="../css-intrinsic-dimensions/resources/width-keyword-classes.css" rel="stylesheet">
-<link href="resources/grid.css" rel="stylesheet">
-<link href="resources/grid-alignment.css" rel="stylesheet">
-<style>
-.definite {
-    /* Give an explicit size to the grid so that percentage grid tracks have a consistent resolution */
-    width: 800px;
-    height: 600px;
-}
-
-.gridItem {
-    grid-column: 1;
-    grid-row: 1;
-    width: 7px;
-    height: 16px;
-}
-
-.gridItem2 {
-    grid-column: 2;
-    grid-row: 2;
-    width: 17px;
-    height: 3px;
-}
-
-.gridWithFixed {
-    grid-template-columns: 7px 11px;
-    grid-template-rows: 17px 2px;
-}
-
-.gridWithPercent {
-    grid-template-columns: 50% 100%;
-    grid-template-rows: 25% 75%;
-}
-.gridWithAuto {
-    grid-template-columns: auto auto;
-    grid-template-rows: auto auto;
-}
-.gridWithEM {
-    grid-template-columns: 10em 12em;
-    grid-template-rows: 15em 17em;
-    font: 10px Ahem;
-}
-.gridWithNoneAndAuto {
-    grid-template-columns: none auto;
-    grid-template-rows: none auto;
-}
-.gridNoneWithAndFixed {
-    grid-template-columns: none 15px;
-    grid-template-rows: none 22px;
-}
-.gridWithThreeItems {
-    grid-template-columns: 15px auto 10em;
-    grid-template-rows: 12em 18px auto;
-    font: 10px Ahem;
-}
-.gridWithPercentAndViewportPercent {
-    grid-template-columns: 50% 15vw;
-    grid-template-rows: 35% 28vh;
-}
-.gridWithFitContentAndFitAvailable {
-    grid-template-columns: -webkit-content-available;
-    grid-template-rows: -webkit-fit-content -webkit-fit-available;
-}
-.gridWithMinMaxContent {
-    grid-template-columns: min-content max-content;
-    grid-template-rows: max-content min-content;
-}
-.gridWithMinMaxAndFixed {
-    grid-template-columns: minmax(45px, 30%) 15px;
-    grid-template-rows: 12em minmax(35%, 10px);
-    font: 10px Ahem;
-}
-.gridWithMinMaxAndMinMaxContent {
-    grid-template-columns: minmax(min-content, 30%) 15px;
-    grid-template-rows: 12em minmax(35%, max-content);
-    font: 10px Ahem;
-}
-.gridWithFractionFraction {
-    grid-template-columns: 2fr 3fr;
-    grid-template-rows: 3fr 5fr;
-}
-.gridWithFractionMinMax {
-    grid-template-columns: minmax(min-content, 45px) 2fr;
-    grid-template-rows: 3fr minmax(14px, max-content);
-}
-.gridWithCalcCalc {
-    grid-template-columns: calc(200px) calc(10em);
-    grid-template-rows: calc(15em) calc(75px);
-    font: 10px Ahem;
-}
-.gridWithCalcAndFixed {
-    grid-template-columns: calc(50%) 8em;
-    grid-template-rows: 88px calc(25%);
-    font: 10px Ahem;
-}
-.gridWithCalcAndMinMax {
-    grid-template-columns: calc(30px + 20%) minmax(min-content, 80px);
-    grid-template-rows: minmax(25%, max-content) calc(10% - 7px);
-}
-.gridWithCalcInsideMinMax {
-    grid-template-columns: minmax(calc(23px + 10%), 400px) 12em;
-    grid-template-rows: calc(150px) minmax(5%, calc(50% - 125px));
-    font: 10px Ahem;
-}
-.gridWithAutoInsideMinMax {
-    grid-template-columns: minmax(auto, min-content) 30px;
-    grid-template-rows: calc(100px + 2em) minmax(10%, auto);
-}
-</style>
-<script src="../../resources/js-test.js"></script>
-</head>
-<body>
-<div class="grid definite gridWithFixed" id="gridWithFixedElement"></div>
-<div class="grid definite gridWithPercent" id="gridWithPercentElement"></div>
-<div class="grid min-content gridWithPercent" id="gridWithPercentWithoutSize">
-    <div class="gridItem"></div>
-</div>
-<div class="grid definite gridWithAuto contentStart" id="gridWithAutoElement">
-    <div class="gridItem2"></div>
-</div>
-<div class="grid definite gridWithEM" id="gridWithEMElement"></div>
-<div class="grid definite gridWithNoneAndAuto" id="gridWithNoneAndAuto"></div>
-<div class="grid definite gridWithNoneAndFixed" id="gridWithNoneAndFixed"></div>
-<div class="grid definite gridWithThreeItems contentStart" id="gridWithThreeItems"></div>
-<div class="grid definite gridWithPercentAndViewportPercent" id="gridWithPercentAndViewportPercent"></div>
-<div class="grid definite gridWithFitContentAndFitAvailable" id="gridWithFitContentAndFitAvailable"></div>
-<div class="grid definite gridWithMinMaxContent" id="gridWithMinMaxContent"></div>
-<div class="grid definite gridWithMinMaxContent" id="gridWithMinMaxContentWithChildrenElement">
-    <div class="gridItem"></div>
-    <div class="gridItem2"></div>
-</div>
-<div class="grid definite gridWithMinMaxAndFixed" id="gridWithMinMaxAndFixed"></div>
-<div class="grid definite gridWithMinMaxAndMinMaxContent" id="gridWithMinMaxAndMinMaxContent"></div>
-<div class="grid definite gridWithFractionFraction" id="gridWithFractionFraction"></div>
-<div class="grid definite gridWithFractionMinMax" id="gridWithFractionMinMax"></div>
-<div class="grid definite gridWithCalcCalc" id="gridWithCalcCalc"></div>
-<div class="grid definite gridWithCalcAndFixed" id="gridWithCalcAndFixed"></div>
-<div class="grid definite gridWithCalcAndMinMax" id="gridWithCalcAndMinMax"></div>
-<div class="grid definite gridWithCalcInsideMinMax" id="gridWithCalcInsideMinMax"></div>
-<div class="grid definite gridWithAutoInsideMinMax contentStart" id="gridWithAutoInsideMinMax"></div>
-<script src="resources/grid-definitions-parsing-utils.js"></script>
-<script src="resources/grid-columns-rows-get-set-multiple.js"></script>
-</body>
-</html>
diff --git a/third_party/blink/web_tests/fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt b/third_party/blink/web_tests/fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt
deleted file mode 100644
index 0220dea..0000000
--- a/third_party/blink/web_tests/fast/css-grid-layout/grid-content-sized-columns-resolution-expected.txt
+++ /dev/null
@@ -1,145 +0,0 @@
-PASS window.getComputedStyle(gridMinContentFixedAndAuto, '').getPropertyValue('grid-template-columns') is "15px 75px"
-PASS window.getComputedStyle(gridAutoAndAuto, '').getPropertyValue('grid-template-columns') is "45px 45px"
-PASS window.getComputedStyle(gridMinContentAndMinContentFixed, '').getPropertyValue('grid-template-columns') is "20px 30px"
-PASS window.getComputedStyle(gridMaxContentAndMinContent, '').getPropertyValue('grid-template-columns') is "70px 20px"
-PASS window.getComputedStyle(gridFixedMinContentAndMaxContent, '').getPropertyValue('grid-template-columns') is "10px 80px"
-PASS window.getComputedStyle(gridFixedMaxContentAndMinContent, '').getPropertyValue('grid-template-columns') is "60px 30px"
-PASS window.getComputedStyle(gridMinContentAndMaxContentFixed, '').getPropertyValue('grid-template-columns') is "20px 70px"
-PASS window.getComputedStyle(gridMaxContentFixedAndAuto, '').getPropertyValue('grid-template-columns') is "65px 25px"
-PASS window.getComputedStyle(gridAutoMinContent, '').getPropertyValue('grid-template-columns') is "70px 20px"
-PASS window.getComputedStyle(gridAutoMaxContent, '').getPropertyValue('grid-template-columns') is "20px 70px"
-PASS window.getComputedStyle(gridMaxContentAndMinContentFixed, '').getPropertyValue('grid-template-columns') is "70px 20px"
-PASS window.getComputedStyle(gridMaxContentAndMaxContentFixed, '').getPropertyValue('grid-template-columns') is "55px 35px"
-
-
-Check that items are processed by ascending span to compute track breadths forbidding extra space distribution.
-PASS window.getComputedStyle(gridMinContentFixedAndAutoUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "0px 40px"
-PASS window.getComputedStyle(gridAutoAndAutoUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "10px 30px"
-PASS window.getComputedStyle(gridMinContentAndMinContentFixedUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "0px 40px"
-PASS window.getComputedStyle(gridMaxContentAndMinContentUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "0px 70px"
-PASS window.getComputedStyle(gridFixedMinContentAndMaxContentUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "10px 70px"
-PASS window.getComputedStyle(gridFixedMaxContentAndMinContentUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "10px 40px"
-PASS window.getComputedStyle(gridMinContentAndMaxContentFixedUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "0px 90px"
-PASS window.getComputedStyle(gridMaxContentFixedAndAutoUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "10px 40px"
-PASS window.getComputedStyle(gridAutoMinContentUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "0px 60px"
-PASS window.getComputedStyle(gridAutoMaxContentUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "0px 90px"
-PASS window.getComputedStyle(gridMaxContentAndMinContentFixedUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "50px 40px"
-PASS window.getComputedStyle(gridMaxContentAndMaxContentFixedUnsortedConstrained, '').getPropertyValue('grid-template-columns') is "40px 70px"
-
-
-Check that items are processed by ascending span to compute track breadths allowing extra space distribution.
-PASS window.getComputedStyle(gridMinContentFixedAndAutoUnsorted, '').getPropertyValue('grid-template-columns') is "15px 90px"
-PASS window.getComputedStyle(gridAutoAndAutoUnsorted, '').getPropertyValue('grid-template-columns') is "60px 30px"
-PASS window.getComputedStyle(gridMinContentAndMinContentFixedUnsorted, '').getPropertyValue('grid-template-columns') is "0px 40px"
-PASS window.getComputedStyle(gridMaxContentAndMinContentUnsorted, '').getPropertyValue('grid-template-columns') is "0px 70px"
-PASS window.getComputedStyle(gridFixedMinContentAndMaxContentUnsorted, '').getPropertyValue('grid-template-columns') is "10px 70px"
-PASS window.getComputedStyle(gridFixedMaxContentAndMinContentUnsorted, '').getPropertyValue('grid-template-columns') is "50px 40px"
-PASS window.getComputedStyle(gridMinContentAndMaxContentFixedUnsorted, '').getPropertyValue('grid-template-columns') is "0px 90px"
-PASS window.getComputedStyle(gridMaxContentFixedAndAutoUnsorted, '').getPropertyValue('grid-template-columns') is "15px 70px"
-PASS window.getComputedStyle(gridAutoMinContentUnsorted, '').getPropertyValue('grid-template-columns') is "50px 60px"
-PASS window.getComputedStyle(gridAutoMaxContentUnsorted, '').getPropertyValue('grid-template-columns') is "0px 90px"
-PASS window.getComputedStyle(gridMaxContentAndMinContentFixedUnsorted, '').getPropertyValue('grid-template-columns') is "50px 40px"
-PASS window.getComputedStyle(gridMaxContentAndMaxContentFixedUnsorted, '').getPropertyValue('grid-template-columns') is "40px 70px"
-
-
-Check that only a subset of tracks grow above track limits.
-PASS window.getComputedStyle(gridMinContentFixedAndAutoAboveLimits, '').getPropertyValue('grid-template-columns') is "15px 95px"
-PASS window.getComputedStyle(gridMaxContentFixedAndAutoAboveLimits, '').getPropertyValue('grid-template-columns') is "15px 135px"
-PASS window.getComputedStyle(gridMinContentFixedAndFixedFixedAndAuto, '').getPropertyValue('grid-template-columns') is "20px 20px 60px"
-PASS window.getComputedStyle(gridAutoAndFixedFixedAndMaxContentFixed, '').getPropertyValue('grid-template-columns') is "110px 20px 20px"
-PASS window.getComputedStyle(gridMaxContentAndMaxContentFixedAndMaxContent, '').getPropertyValue('grid-template-columns') is "70px 20px 50px"
-PASS window.getComputedStyle(gridAutoAndMinContentFixedAndMinContent, '').getPropertyValue('grid-template-columns') is "55px 30px 65px"
-PASS successfullyParsed is true
-
-TEST COMPLETE
-
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXX
-XXXX XXXX
-XX XX XX
-XXXX XXXX
-XXX XXX
-XXXXXXX
-XXXXX XX
-XXX
-XXXXX
-XXXX XXXX
-X X
-XXXX
-XXXX XXXX
-XXXX XXXX
-XX XX
-XXXX
-XXX XXX
-XX XX XX XX
-XXXXXX XXXXXX
-XXXX XXXX
-XXX XXX
-XXXXX
-XXX XXX
-XXXX XXXX
-XXXX XXXX
-XX
-XXXX XXXX
-XX XX XX XX
-XXXXXXX
-XXXX XXXX
-XXXX XXXX
-XXXX XXXX
-XXX
-XXXX XXXX
-XX XX XX XX
-XXXX XXXX
-XXX XXX
-XXXXXXX
-XXXXX XX
-XXX
-XXXXX
-XXXX XXXX
-X X
-XXXX
-XXXX XXXX
-XXXX XXXX
-XX XX
-XXXX
-XXX XXX
-XX XX XX XX
-XXXXXX XXXXXX
-XXXX XXXX
-XXX XXX
-XXXXX
-XXX XXX
-XXXX XXXX
-XXXX XXXX
-XX
-XXXX XXXX
-XX XX XX XX
-XXXXXXX
-XXXX XXXX
-XXXXXXXXXXX
-XXXX XXXX
-XXXXXXXXXXXXXXX
-XXXX XXXX
-XXXXXXXXXX
-XXXX XXXX
-XXXXXXXXXXXXXXX
-X X X
-X X
-XX XX XX XX XX
-XX
-XXXXXXXXXXXXXXX
-XXX XXX
diff --git a/third_party/blink/web_tests/fast/css-grid-layout/grid-content-sized-columns-resolution.html b/third_party/blink/web_tests/fast/css-grid-layout/grid-content-sized-columns-resolution.html
deleted file mode 100644
index a69f047..0000000
--- a/third_party/blink/web_tests/fast/css-grid-layout/grid-content-sized-columns-resolution.html
+++ /dev/null
@@ -1,379 +0,0 @@
-<html>
-<head>
-<link href="resources/grid.css" rel="stylesheet"/>
-<link href="resources/grid-alignment.css" rel="stylesheet"/>
-<style>
- .grid {
-     font: 10px/1 Ahem;
- }
- .gridWidth300 {
-     width: 300px;
- }
- .gridMinContentFixedAndAuto {
-     grid-template-columns: minmax(min-content, 15px) auto;
- }
- .gridMaxContentFixedAndAuto {
-     grid-template-columns: minmax(max-content, 15px) auto;
- }
- .gridAutoAndAuto {
-     grid-template-columns: auto auto;
- }
- .gridMinContentAndMinContentFixed {
-     grid-template-columns: min-content minmax(min-content, 30px);
- }
- .gridMinContentAndMaxContentFixed {
-     grid-template-columns: min-content minmax(max-content, 30px);
- }
- .gridMaxContentAndMinContent {
-     grid-template-columns: max-content min-content;
- }
- .gridFixedMinContentAndMaxContent {
-     grid-template-columns: minmax(10px, min-content) max-content;
- }
- .gridFixedMaxContentAndMinContent {
-     grid-template-columns: minmax(10px, max-content) min-content;
- }
- .gridAutoMinContent {
-     grid-template-columns: auto min-content;
- }
- .gridAutoMaxContent {
-     grid-template-columns: auto max-content;
- }
- .gridMaxContentAndMinContentFixed {
-     grid-template-columns: max-content minmax(min-content, 35px);
- }
- .gridMaxContentAndMaxContentFixed {
-     grid-template-columns: max-content minmax(max-content, 35px);
- }
- .gridMinContentFixedAndFixedFixedAndAuto {
-     grid-template-columns: minmax(min-content, 20px) minmax(20px, 30px) auto;
- }
- .gridAutoAndFixedFixedAndMaxContentFixed {
-     grid-template-columns: auto minmax(20px, 30px) minmax(max-content, 20px);
- }
- .gridMaxContentAndMaxContentFixedAndMaxContent {
-    grid-template-columns: max-content minmax(max-content, 20px) max-content;
- }
- .gridAutoAndMinContentFixedAndMinContent {
-    grid-template-columns: auto minmax(min-content, 30px) min-content;
- }
-
-</style>
-<script src="../../resources/js-test.js"></script>
-</head>
-<body>
-<div class="grid gridMinContentFixedAndAuto justifyContentStart" id="gridMinContentFixedAndAuto">
-  <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridAutoAndAuto justifyContentStart" id="gridAutoAndAuto">
-  <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridMinContentAndMinContentFixed" id="gridMinContentAndMinContentFixed">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridMaxContentAndMinContent" id="gridMaxContentAndMinContent">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridFixedMinContentAndMaxContent" id="gridFixedMinContentAndMaxContent">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridFixedMaxContentAndMinContent" id="gridFixedMaxContentAndMinContent">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridMinContentAndMaxContentFixed" id="gridMinContentAndMaxContentFixed">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMaxContentFixedAndAuto" id="gridMaxContentFixedAndAuto">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-    </div>
-</div>
-
-<div class="grid gridAutoMinContent justifyContentStart" id="gridAutoMinContent">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridAutoMaxContent justifyContentStart" id="gridAutoMaxContent">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<div class="constrainedContainer">
-<div class="grid gridMaxContentAndMinContentFixed" id="gridMaxContentAndMinContentFixed">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-</div>
-
-<div class="grid gridMaxContentAndMaxContentFixed" id="gridMaxContentAndMaxContentFixed">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-</div>
-
-<!-- Check that items are processed by ascending span instead of going track by track forbidding extra space distribution. -->
-<div class="constrainedContainer">
-    <div class="grid gridMinContentFixedAndAuto" id="gridMinContentFixedAndAutoUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowSecondColumn">XXXX XXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridAutoAndAuto" id="gridAutoAndAutoUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowSecondColumn">XXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMinContentAndMinContentFixed" id="gridMinContentAndMinContentFixedUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XX XX XX</div>
-	<div class="firstRowSecondColumn">XXXX XXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMaxContentAndMinContent" id="gridMaxContentAndMinContentUnsortedConstrained">
-	<div class="firstRowBothColumn">XXX XXX</div>
-	<div class="firstRowSecondColumn">XXXXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridFixedMinContentAndMaxContent" id="gridFixedMinContentAndMaxContentUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXXX XX</div>
-	<div class="firstRowSecondColumn">XXX</div>
-	<div class="firstRowSecondColumn">XXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridFixedMaxContentAndMinContent" id="gridFixedMaxContentAndMinContentUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">X X</div>
-	<div class="firstRowSecondColumn">XXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMinContentAndMaxContentFixed" id="gridMinContentAndMaxContentFixedUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowSecondColumn">XXXX XXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMaxContentFixedAndAuto" id="gridMaxContentFixedAndAutoUnsortedConstrained">
-	<div class="firstRowBothColumn">XX XX</div>
-	<div class="firstRowSecondColumn">XXXX</div>
-	<div class="firstRowSecondColumn">XXX XXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridAutoMinContent" id="gridAutoMinContentUnsortedConstrained">
-	<div class="firstRowBothColumn">XX XX XX XX</div>
-	<div class="firstRowSecondColumn">XXXXXX XXXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridAutoMaxContent" id="gridAutoMaxContentUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XXX XXX</div>
-	<div class="firstRowSecondColumn">XXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMaxContentAndMinContentFixed" id="gridMaxContentAndMinContentFixedUnsortedConstrained">
-	<div class="firstRowBothColumn">XXX XXX</div>
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowSecondColumn">XXXX XXXX</div>
-	<div class="firstRowSecondColumn">XX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMaxContentAndMaxContentFixed" id="gridMaxContentAndMaxContentFixedUnsortedConstrained">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XX XX XX XX</div>
-	<div class="firstRowSecondColumn">XXXXXXX</div>
-    </div>
-</div>
-
-<!-- Check that items are processed by ascending span instead of going track by track allowing extra space distribution. -->
-<div class="grid gridMinContentFixedAndAuto justifyContentStart" id="gridMinContentFixedAndAutoUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowSecondColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridAutoAndAuto justifyContentStart" id="gridAutoAndAutoUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowSecondColumn">XXX</div>
-</div>
-
-<div class="grid gridMinContentAndMinContentFixed" id="gridMinContentAndMinContentFixedUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowBothColumn">XX XX XX XX</div>
-    <div class="firstRowSecondColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridMaxContentAndMinContent" id="gridMaxContentAndMinContentUnsorted">
-    <div class="firstRowBothColumn">XXX XXX</div>
-    <div class="firstRowSecondColumn">XXXXXXX</div>
-</div>
-
-<div class="grid gridFixedMinContentAndMaxContent" id="gridFixedMinContentAndMaxContentUnsorted">
-    <div class="firstRowBothColumn">XXXXX XX</div>
-    <div class="firstRowSecondColumn">XXX</div>
-    <div class="firstRowSecondColumn">XXXXX</div>
-</div>
-
-<div class="grid gridFixedMaxContentAndMinContent" id="gridFixedMaxContentAndMinContentUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowBothColumn">X X</div>
-    <div class="firstRowSecondColumn">XXXX</div>
-</div>
-
-<div class="grid gridMinContentAndMaxContentFixed" id="gridMinContentAndMaxContentFixedUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowSecondColumn">XXXX XXXX</div>
-</div>
-
-<div class="grid gridMaxContentFixedAndAuto justifyContentStart" id="gridMaxContentFixedAndAutoUnsorted">
-    <div class="firstRowBothColumn">XX XX</div>
-    <div class="firstRowSecondColumn">XXXX</div>
-    <div class="firstRowSecondColumn">XXX XXX</div>
-</div>
-
-<div class="grid gridAutoMinContent justifyContentStart" id="gridAutoMinContentUnsorted">
-    <div class="firstRowBothColumn">XX XX XX XX</div>
-    <div class="firstRowSecondColumn">XXXXXX XXXXXX</div>
-</div>
-
-<div class="grid gridAutoMaxContent justifyContentStart" id="gridAutoMaxContentUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowBothColumn">XXX XXX</div>
-    <div class="firstRowSecondColumn">XXXXX</div>
-</div>
-
-<div class="grid gridMaxContentAndMinContentFixed" id="gridMaxContentAndMinContentFixedUnsorted">
-    <div class="firstRowBothColumn">XXX XXX</div>
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowSecondColumn">XXXX XXXX</div>
-    <div class="firstRowSecondColumn">XX</div>
-</div>
-
-<div class="grid gridMaxContentAndMaxContentFixed" id="gridMaxContentAndMaxContentFixedUnsorted">
-    <div class="firstRowBothColumn">XXXX XXXX</div>
-    <div class="firstRowBothColumn">XX XX XX XX</div>
-    <div class="firstRowSecondColumn">XXXXXXX</div>
-</div>
-
-<!-- The next four force the grid to grow only a particular subset of tracks above the limits -->
-<div class="constrainedContainer">
-    <div class="grid gridMinContentFixedAndAuto justifyContentStart" id="gridMinContentFixedAndAutoAboveLimits">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XXXXXXXXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMaxContentFixedAndAuto" id="gridMaxContentFixedAndAutoAboveLimits">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XXXXXXXXXXXXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridMinContentFixedAndFixedFixedAndAuto" id="gridMinContentFixedAndFixedFixedAndAuto">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XXXXXXXXXX</div>
-    </div>
-</div>
-
-<div class="constrainedContainer">
-    <div class="grid gridAutoAndFixedFixedAndMaxContentFixed" id="gridAutoAndFixedFixedAndMaxContentFixed">
-	<div class="firstRowBothColumn">XXXX XXXX</div>
-	<div class="firstRowBothColumn">XXXXXXXXXXXXXXX</div>
-    </div>
-</div>
-
-<div class="grid gridMaxContentAndMaxContentFixedAndMaxContent" id="gridMaxContentAndMaxContentFixedAndMaxContent">
-    <div style="grid-row: 1; grid-column: 1;">X X X</div>
-    <div style="grid-row: 1; grid-column: 3;">X X</div>
-    <div style="grid-row: 1; grid-column: 1 / -1;">XX XX XX XX XX</div>
-</div>
-
-<div class="grid gridAutoAndMinContentFixedAndMinContent justifyContentStart" id="gridAutoAndMinContentFixedAndMinContent">
-    <div style="grid-row: 1; grid-column: 1;">XX</div>
-    <div style="grid-row: 1; grid-column: 1 / -1;">XXXXXXXXXXXXXXX</div>
-    <div style="grid-row: 1; grid-column: 3;">XXX XXX</div>
-</div>
-
-<script>
-   function testGridColumnsValues(id, computedColumnValue)
-   {
-       shouldBeEqualToString("window.getComputedStyle(" + id + ", '').getPropertyValue('grid-template-columns')", computedColumnValue);
-   }
-
-   testGridColumnsValues("gridMinContentFixedAndAuto", "15px 75px");
-   testGridColumnsValues("gridAutoAndAuto", "45px 45px");
-   testGridColumnsValues("gridMinContentAndMinContentFixed", "20px 30px");
-   testGridColumnsValues("gridMaxContentAndMinContent", "70px 20px");
-   testGridColumnsValues("gridFixedMinContentAndMaxContent", "10px 80px");
-   testGridColumnsValues("gridFixedMaxContentAndMinContent", "60px 30px");
-   testGridColumnsValues("gridMinContentAndMaxContentFixed", "20px 70px");
-   testGridColumnsValues("gridMaxContentFixedAndAuto", "65px 25px");
-   testGridColumnsValues("gridAutoMinContent", "70px 20px");
-   testGridColumnsValues("gridAutoMaxContent", "20px 70px");
-   testGridColumnsValues("gridMaxContentAndMinContentFixed", "70px 20px");
-   testGridColumnsValues("gridMaxContentAndMaxContentFixed", "55px 35px");
-
-   debug("");
-   debug("Check that items are processed by ascending span to compute track breadths forbidding extra space distribution.");
-   testGridColumnsValues("gridMinContentFixedAndAutoUnsortedConstrained", "0px 40px");
-   testGridColumnsValues("gridAutoAndAutoUnsortedConstrained", "10px 30px");
-   testGridColumnsValues("gridMinContentAndMinContentFixedUnsortedConstrained", "0px 40px");
-   testGridColumnsValues("gridMaxContentAndMinContentUnsortedConstrained", "0px 70px");
-   testGridColumnsValues("gridFixedMinContentAndMaxContentUnsortedConstrained", "10px 70px");
-   testGridColumnsValues("gridFixedMaxContentAndMinContentUnsortedConstrained", "10px 40px");
-   testGridColumnsValues("gridMinContentAndMaxContentFixedUnsortedConstrained", "0px 90px");
-   testGridColumnsValues("gridMaxContentFixedAndAutoUnsortedConstrained", "10px 40px");
-   testGridColumnsValues("gridAutoMinContentUnsortedConstrained", "0px 60px");
-   testGridColumnsValues("gridAutoMaxContentUnsortedConstrained", "0px 90px");
-   testGridColumnsValues("gridMaxContentAndMinContentFixedUnsortedConstrained", "50px 40px");
-   testGridColumnsValues("gridMaxContentAndMaxContentFixedUnsortedConstrained", "40px 70px");
-
-   debug("");
-   debug("Check that items are processed by ascending span to compute track breadths allowing extra space distribution.");
-   testGridColumnsValues("gridMinContentFixedAndAutoUnsorted", "15px 90px");
-   testGridColumnsValues("gridAutoAndAutoUnsorted", "60px 30px");
-   testGridColumnsValues("gridMinContentAndMinContentFixedUnsorted", "0px 40px");
-   testGridColumnsValues("gridMaxContentAndMinContentUnsorted", "0px 70px");
-   testGridColumnsValues("gridFixedMinContentAndMaxContentUnsorted", "10px 70px");
-   testGridColumnsValues("gridFixedMaxContentAndMinContentUnsorted", "50px 40px");
-   testGridColumnsValues("gridMinContentAndMaxContentFixedUnsorted", "0px 90px");
-   testGridColumnsValues("gridMaxContentFixedAndAutoUnsorted", "15px 70px");
-   testGridColumnsValues("gridAutoMinContentUnsorted", "50px 60px");
-   testGridColumnsValues("gridAutoMaxContentUnsorted", "0px 90px");
-   testGridColumnsValues("gridMaxContentAndMinContentFixedUnsorted", "50px 40px");
-   testGridColumnsValues("gridMaxContentAndMaxContentFixedUnsorted", "40px 70px");
-
-   debug("");
-   debug("Check that only a subset of tracks grow above track limits.");
-   testGridColumnsValues("gridMinContentFixedAndAutoAboveLimits", "15px 95px");
-   testGridColumnsValues("gridMaxContentFixedAndAutoAboveLimits", "15px 135px");
-   testGridColumnsValues("gridMinContentFixedAndFixedFixedAndAuto", "20px 20px 60px");
-   testGridColumnsValues("gridAutoAndFixedFixedAndMaxContentFixed", "110px 20px 20px");
-   testGridColumnsValues("gridMaxContentAndMaxContentFixedAndMaxContent", "70px 20px 50px");
-   testGridColumnsValues("gridAutoAndMinContentFixedAndMinContent", "55px 30px 65px");
-</script>
-</body>
-</html>
diff --git a/third_party/blink/web_tests/fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js b/third_party/blink/web_tests/fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js
deleted file mode 100644
index 8597977..0000000
--- a/third_party/blink/web_tests/fast/css-grid-layout/resources/grid-columns-rows-get-set-multiple.js
+++ /dev/null
@@ -1,114 +0,0 @@
-description('Test that setting and getting grid-template-columns and grid-template-rows works as expected');
-
-debug("Test getting |grid-template-columns| and |grid-template-rows| set through CSS");
-testGridDefinitionsValues(document.getElementById("gridWithFixedElement"), "7px 11px", "17px 2px");
-testGridDefinitionsValues(document.getElementById("gridWithPercentElement"), "400px 800px", "150px 450px");
-testGridDefinitionsValues(document.getElementById("gridWithPercentWithoutSize"), "3.5px 7px", "4px 12px");
-testGridDefinitionsValues(document.getElementById("gridWithAutoElement"), "0px 17px", "0px 3px");
-testGridDefinitionsValues(document.getElementById("gridWithEMElement"), "100px 120px", "150px 170px");
-testGridDefinitionsValues(document.getElementById("gridWithThreeItems"), "15px 0px 100px", "120px 18px 0px");
-testGridDefinitionsValues(document.getElementById("gridWithPercentAndViewportPercent"), "400px 120px", "210px 168px");
-testGridDefinitionsValues(document.getElementById("gridWithFitContentAndFitAvailable"), "none", "none");
-testGridDefinitionsValues(document.getElementById("gridWithMinMaxContent"), "0px 0px", "0px 0px");
-testGridDefinitionsValues(document.getElementById("gridWithMinMaxContentWithChildrenElement"), "7px 17px", "16px 3px");
-testGridDefinitionsValues(document.getElementById("gridWithMinMaxAndFixed"), "240px 15px", "120px 210px");
-testGridDefinitionsValues(document.getElementById("gridWithMinMaxAndMinMaxContent"), "240px 15px", "120px 210px");
-testGridDefinitionsValues(document.getElementById("gridWithFractionFraction"), "320px 480px", "225px 375px");
-testGridDefinitionsValues(document.getElementById("gridWithFractionMinMax"), "45px 755px", "586px 14px");
-testGridDefinitionsValues(document.getElementById("gridWithCalcCalc"), "200px 100px", "150px 75px");
-testGridDefinitionsValues(document.getElementById("gridWithCalcAndFixed"), "400px 80px", "88px 150px");
-testGridDefinitionsValues(document.getElementById("gridWithCalcAndMinMax"), "190px 80px", "150px 53px");
-testGridDefinitionsValues(document.getElementById("gridWithCalcInsideMinMax"), "400px 120px", "150px 175px");
-testGridDefinitionsValues(document.getElementById("gridWithAutoInsideMinMax"), "0px 30px", "132px 60px");
-
-debug("");
-debug("Test the initial value");
-var element = document.createElement("div");
-document.body.appendChild(element);
-shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-columns')", "'none'");
-shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-rows')", "'none'");
-
-debug("");
-debug("Test getting and setting grid-template-rows and grid-template-columns through JS");
-testGridDefinitionsSetJSValues("18px 22px", "66px 70px");
-testGridDefinitionsSetJSValues("55% 80%", "40% 63%", "440px 640px", "240px 378px");
-testGridDefinitionsSetJSValues("auto auto", "auto auto", "0px 0px", "0px 0px");
-testGridDefinitionsSetJSValues("auto 16em 22px", "56% 10em auto", "0px 160px 22px", "336px 100px 0px");
-testGridDefinitionsSetJSValues("16em minmax(16px, 20px)", "minmax(10%, 15%) auto", "160px 20px", "90px 0px");
-testGridDefinitionsSetJSValues("16em 2fr", "14fr auto", "160px 640px", "600px 0px");
-testGridDefinitionsSetJSValues("50% 12vw", "5% 85vh", "400px 96px", "30px 510px");
-testGridDefinitionsSetJSValues("calc(25px) calc(2em)", "auto calc(10%)", "25px 20px", "0px 60px", "calc(25px) calc(2em)", "auto calc(10%)");
-testGridDefinitionsSetJSValues("calc(25px + 40%) minmax(min-content, calc(10% + 12px))", "minmax(calc(75% - 350px), max-content) auto", "345px 92px", "100px 0px", "calc(25px + 40%) minmax(min-content, calc(10% + 12px))", "minmax(calc(75% - 350px), max-content) auto");
-testGridDefinitionsSetJSValues("auto minmax(16px, auto)", "minmax(auto, 15%) 10vw", "0px 16px", "90px 80px");
-
-debug("");
-debug("Test getting wrong values set from CSS");
-var gridWithNoneAndAuto = document.getElementById("gridWithNoneAndAuto");
-shouldBe("getComputedStyle(gridWithNoneAndAuto, '').getPropertyValue('grid-template-columns')", "'none'");
-shouldBe("getComputedStyle(gridWithNoneAndAuto, '').getPropertyValue('grid-template-rows')", "'none'");
-
-var gridWithNoneAndFixed = document.getElementById("gridWithNoneAndFixed");
-shouldBe("getComputedStyle(gridWithNoneAndFixed, '').getPropertyValue('grid-template-columns')", "'none'");
-shouldBe("getComputedStyle(gridWithNoneAndFixed, '').getPropertyValue('grid-template-rows')", "'none'");
-
-debug("");
-debug("Test setting and getting wrong values from JS");
-testGridDefinitionsSetBadJSValues("none auto", "none auto");
-testGridDefinitionsSetBadJSValues("none 16em", "none 56%");
-testGridDefinitionsSetBadJSValues("none none", "none none");
-testGridDefinitionsSetBadJSValues("auto none", "auto none");
-testGridDefinitionsSetBadJSValues("auto none 16em", "auto 18em none");
-testGridDefinitionsSetBadJSValues("-webkit-fit-content -webkit-fit-content", "-webkit-fit-available -webkit-fit-available");
-// Negative values are not allowed.
-testGridDefinitionsSetBadJSValues("-10px minmax(16px, 32px)", "minmax(10%, 15%) -10vw");
-testGridDefinitionsSetBadJSValues("10px minmax(16px, -1vw)", "minmax(-1%, 15%) 10vw");
-// Invalid expressions with calc
-testGridDefinitionsSetBadJSValues("10px calc(16px 30px)", "calc(25px + auto) 2em");
-testGridDefinitionsSetBadJSValues("minmax(min-content, calc() 250px", "calc(2em(");
-
-function testInherit()
-{
-    var parentElement = document.createElement("div");
-    document.body.appendChild(parentElement);
-    parentElement.style.display = "grid";
-    parentElement.style.width = "800px";
-    parentElement.style.height = "600px";
-    parentElement.style.font = "10px Ahem"; // Used to resolve em font consistently.
-    parentElement.style.gridTemplateColumns = "50px 1fr [last]";
-    parentElement.style.gridTemplateRows = "2em [middle] 45px";
-    testGridDefinitionsValues(parentElement, "50px 750px [last]", "20px [middle] 45px");
-
-    element = document.createElement("div");
-    parentElement.appendChild(element);
-    element.style.display = "grid";
-    element.style.gridTemplateColumns = "inherit";
-    element.style.gridTemplateRows = "inherit";
-    testGridDefinitionsValues(element, "50px 0px [last]", "20px [middle] 45px");
-
-    document.body.removeChild(parentElement);
-}
-debug("");
-debug("Test setting grid-template-columns and grid-template-rows to 'inherit' through JS");
-testInherit();
-
-function testInitial()
-{
-    element = document.createElement("div");
-    document.body.appendChild(element);
-    element.style.display = "grid";
-    element.style.width = "800px";
-    element.style.height = "600px";
-    element.style.gridTemplateColumns = "150% [middle] 55px";
-    element.style.gridTemplateRows = "1fr [line] 2fr [line]";
-    testGridDefinitionsValues(element, "1200px [middle] 55px", "200px [line] 400px [line]");
-
-    element.style.gridTemplateColumns = "initial";
-    element.style.gridTemplateRows = "initial";
-    shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-columns')", "'none'");
-    shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-rows')", "'none'");
-
-    document.body.removeChild(element);
-}
-debug("");
-debug("Test setting grid-template-columns and grid-template-rows to 'initial' through JS");
-testInitial();