| Index: third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp
|
| diff --git a/third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp b/third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp
|
| index b6fa6b96ef010438e0a5fdaedb4388b661e9041a..e485e30c60f060d106c0ad12c46333c4ef26daed 100644
|
| --- a/third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp
|
| +++ b/third_party/WebKit/Source/core/css/parser/CSSPropertyParserTest.cpp
|
| @@ -156,4 +156,69 @@ TEST(CSSPropertyParserTest, GridTrackLimit16) {
|
| EXPECT_EQ(computeNumberOfTracks(toCSSValueList(value)), 999999);
|
| }
|
|
|
| +static int getGridPositionInteger(const CSSValue& value) {
|
| + DCHECK(value.isValueList());
|
| + const auto& list = toCSSValueList(value);
|
| + DCHECK_EQ(list.length(), static_cast<size_t>(1));
|
| + const auto& primitiveValue = toCSSPrimitiveValue(list.item(0));
|
| + DCHECK(primitiveValue.isNumber());
|
| + return primitiveValue.getIntValue();
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit1) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridColumnStart, "999999");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), 999999);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit2) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridColumnEnd, "1000000");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), 1000000);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit3) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridRowStart, "1000001");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), 1000000);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit4) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridRowEnd, "5000000000");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), 1000000);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit5) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridColumnStart, "-999999");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), -999999);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit6) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridColumnEnd, "-1000000");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), -1000000);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit7) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridRowStart, "-1000001");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), -1000000);
|
| +}
|
| +
|
| +TEST(CSSPropertyParserTest, GridPositionLimit8) {
|
| + const CSSValue* value =
|
| + CSSParser::parseSingleValue(CSSPropertyGridRowEnd, "-5000000000");
|
| + DCHECK(value);
|
| + EXPECT_EQ(getGridPositionInteger(*value), -1000000);
|
| +}
|
| +
|
| } // namespace blink
|
|
|