| OLD | NEW |
| 1 description('Test that setting and getting grid-template-columns and grid-templa
te-rows works as expected'); | 1 description('Test that setting and getting grid-template-columns and grid-templa
te-rows works as expected'); |
| 2 | 2 |
| 3 debug("Test getting grid-template-columns and grid-template-rows set through CSS
"); | 3 debug("Test getting grid-template-columns and grid-template-rows set through CSS
"); |
| 4 testGridDefinitionsValues(document.getElementById("gridWithNoneElement"), "none"
, "none"); | 4 testGridDefinitionsValues(document.getElementById("gridWithNoneElement"), "none"
, "none"); |
| 5 testGridDefinitionsValues(document.getElementById("gridWithFixedElement"), "10px
", "15px"); | 5 testGridDefinitionsValues(document.getElementById("gridWithFixedElement"), "10px
", "15px"); |
| 6 testGridDefinitionsValues(document.getElementById("gridWithPercentElement"), "53
%", "27%"); | 6 testGridDefinitionsValues(document.getElementById("gridWithPercentElement"), "53
%", "27%"); |
| 7 testGridDefinitionsValues(document.getElementById("gridWithAutoElement"), "auto"
, "auto"); | 7 testGridDefinitionsValues(document.getElementById("gridWithAutoElement"), "auto"
, "auto"); |
| 8 testGridDefinitionsValues(document.getElementById("gridWithEMElement"), "100px",
"150px"); | 8 testGridDefinitionsValues(document.getElementById("gridWithEMElement"), "100px",
"150px"); |
| 9 testGridDefinitionsValues(document.getElementById("gridWithViewPortPercentageEle
ment"), "64px", "60px"); | 9 testGridDefinitionsValues(document.getElementById("gridWithViewPortPercentageEle
ment"), "64px", "60px"); |
| 10 testGridDefinitionsValues(document.getElementById("gridWithMinMax"), "minmax(10%
, 15px)", "minmax(20px, 50%)"); | 10 testGridDefinitionsValues(document.getElementById("gridWithMinMax"), "minmax(10%
, 15px)", "minmax(20px, 50%)"); |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 49 testNonGridDefinitionsSetJSValues("minmax(min-content, 8vh)", "minmax(10vw, min-
content)", "minmax(min-content, 48px)", "minmax(80px, min-content)"); | 49 testNonGridDefinitionsSetJSValues("minmax(min-content, 8vh)", "minmax(10vw, min-
content)", "minmax(min-content, 48px)", "minmax(80px, min-content)"); |
| 50 testNonGridDefinitionsSetJSValues("minmax(22em, max-content)", "minmax(max-conte
nt, 5em)", "minmax(220px, max-content)", "minmax(max-content, 50px)"); | 50 testNonGridDefinitionsSetJSValues("minmax(22em, max-content)", "minmax(max-conte
nt, 5em)", "minmax(220px, max-content)", "minmax(max-content, 50px)"); |
| 51 testNonGridDefinitionsSetJSValues("minmax(min-content, max-content)", "minmax(ma
x-content, min-content)"); | 51 testNonGridDefinitionsSetJSValues("minmax(min-content, max-content)", "minmax(ma
x-content, min-content)"); |
| 52 // Unit comparison should be case-insensitive. | 52 // Unit comparison should be case-insensitive. |
| 53 testNonGridDefinitionsSetJSValues("3600Fr", "154fR", "3600fr", "154fr", "3600fr"
, "154fr"); | 53 testNonGridDefinitionsSetJSValues("3600Fr", "154fR", "3600fr", "154fr", "3600fr"
, "154fr"); |
| 54 // Float values are allowed. | 54 // Float values are allowed. |
| 55 testNonGridDefinitionsSetJSValues("3.1459fr", "2.718fr"); | 55 testNonGridDefinitionsSetJSValues("3.1459fr", "2.718fr"); |
| 56 // A leading '+' is allowed. | 56 // A leading '+' is allowed. |
| 57 testNonGridDefinitionsSetJSValues("+3fr", "+4fr", "3fr", "4fr", "3fr", "4fr"); | 57 testNonGridDefinitionsSetJSValues("+3fr", "+4fr", "3fr", "4fr", "3fr", "4fr"); |
| 58 testNonGridDefinitionsSetJSValues("minmax(auto, 8vh)", "minmax(10vw, auto)", "mi
nmax(auto, 48px)", "minmax(80px, auto)"); | 58 testNonGridDefinitionsSetJSValues("minmax(auto, 8vh)", "minmax(10vw, auto)", "mi
nmax(auto, 48px)", "minmax(80px, auto)"); |
| 59 // Flex factor values can be zero. |
| 60 testGridDefinitionsSetJSValues("0fr", ".0fr", "0px", "0px", "0fr", "0fr"); |
| 61 testGridDefinitionsSetJSValues("minmax(0fr, 0fr)", "minmax(.0fr, .0fr)", "0px",
"0px", "minmax(0fr, 0fr)", "minmax(0fr, 0fr)"); |
| 59 | 62 |
| 60 debug(""); | 63 debug(""); |
| 61 debug("Test setting grid-template-columns and grid-template-rows to bad values t
hrough JS"); | 64 debug("Test setting grid-template-columns and grid-template-rows to bad values t
hrough JS"); |
| 62 // No comma and only 1 argument provided. | 65 // No comma and only 1 argument provided. |
| 63 testGridDefinitionsSetBadJSValues("minmax(10px 20px)", "minmax(10px)") | 66 testGridDefinitionsSetBadJSValues("minmax(10px 20px)", "minmax(10px)") |
| 64 // Nested minmax and only 2 arguments are allowed. | 67 // Nested minmax and only 2 arguments are allowed. |
| 65 testGridDefinitionsSetBadJSValues("minmax(minmax(10px, 20px), 20px)", "minmax(10
px, 20px, 30px)"); | 68 testGridDefinitionsSetBadJSValues("minmax(minmax(10px, 20px), 20px)", "minmax(10
px, 20px, 30px)"); |
| 66 // No breadth value and no comma. | 69 // No breadth value and no comma. |
| 67 testGridDefinitionsSetBadJSValues("minmax()", "minmax(30px 30% 30em)"); | 70 testGridDefinitionsSetBadJSValues("minmax()", "minmax(30px 30% 30em)"); |
| 68 testGridDefinitionsSetBadJSValues("-2fr", "3ffr"); | 71 testGridDefinitionsSetBadJSValues("-2fr", "3ffr"); |
| 69 testGridDefinitionsSetBadJSValues("-2.05fr", "+-3fr"); | 72 testGridDefinitionsSetBadJSValues("-2.05fr", "+-3fr"); |
| 70 testGridDefinitionsSetBadJSValues("0fr", "1r"); | 73 testGridDefinitionsSetBadJSValues("1f", "1r"); |
| 71 // A dimension doesn't allow spaces between the number and the unit. | 74 // A dimension doesn't allow spaces between the number and the unit. |
| 72 testGridDefinitionsSetBadJSValues(".0000fr", "13 fr"); | 75 testGridDefinitionsSetBadJSValues(".0001 fr", "13 fr"); |
| 73 testGridDefinitionsSetBadJSValues("7.-fr", "-8,0fr"); | 76 testGridDefinitionsSetBadJSValues("7.-fr", "-8,0fr"); |
| 74 // Negative values are not allowed. | 77 // Negative values are not allowed. |
| 75 testGridDefinitionsSetBadJSValues("-1px", "-6em"); | 78 testGridDefinitionsSetBadJSValues("-1px", "-6em"); |
| 76 testGridDefinitionsSetBadJSValues("minmax(-1%, 32%)", "minmax(2vw, -6em)"); | 79 testGridDefinitionsSetBadJSValues("minmax(-1%, 32%)", "minmax(2vw, -6em)"); |
| 77 | 80 |
| 78 debug(""); | 81 debug(""); |
| 79 debug("Test setting grid-template-columns and grid-template-rows back to 'none'
through JS"); | 82 debug("Test setting grid-template-columns and grid-template-rows back to 'none'
through JS"); |
| 80 testNonGridDefinitionsSetJSValues("18px", "66px"); | 83 testNonGridDefinitionsSetJSValues("18px", "66px"); |
| 81 testNonGridDefinitionsSetJSValues("none", "none"); | 84 testNonGridDefinitionsSetJSValues("none", "none"); |
| 82 | 85 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 112 element.style.gridTemplateColumns = "initial"; | 115 element.style.gridTemplateColumns = "initial"; |
| 113 element.style.gridTemplateRows = "initial"; | 116 element.style.gridTemplateRows = "initial"; |
| 114 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-colu
mns')", "'none'"); | 117 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-colu
mns')", "'none'"); |
| 115 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-rows
')", "'none'"); | 118 shouldBe("getComputedStyle(element, '').getPropertyValue('grid-template-rows
')", "'none'"); |
| 116 | 119 |
| 117 document.body.removeChild(element); | 120 document.body.removeChild(element); |
| 118 } | 121 } |
| 119 debug(""); | 122 debug(""); |
| 120 debug("Test setting grid-template-columns and grid-template-rows to 'initial' th
rough JS"); | 123 debug("Test setting grid-template-columns and grid-template-rows to 'initial' th
rough JS"); |
| 121 testInitial(); | 124 testInitial(); |
| OLD | NEW |