Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(469)

Side by Side Diff: third_party/WebKit/LayoutTests/fast/css-grid-layout/resources/non-grid-columns-rows-get-set.js

Issue 1323053004: [CSS Grid Layout] Flex tracks sizing alg must handle 0fr values (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Applied last suggested changes. Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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
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
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();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698