OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 | 191 |
192 TEST(HTMLDimensionTest, parseListOfDimensionsMultipleDimensionsWithOneEmpty) { | 192 TEST(HTMLDimensionTest, parseListOfDimensionsMultipleDimensionsWithOneEmpty) { |
193 Vector<HTMLDimension> result = parseListOfDimensions(String("2*,,8.%")); | 193 Vector<HTMLDimension> result = parseListOfDimensions(String("2*,,8.%")); |
194 | 194 |
195 ASSERT_EQ(3U, result.size()); | 195 ASSERT_EQ(3U, result.size()); |
196 ASSERT_EQ(HTMLDimension(2, HTMLDimension::Relative), result[0]); | 196 ASSERT_EQ(HTMLDimension(2, HTMLDimension::Relative), result[0]); |
197 ASSERT_EQ(HTMLDimension(0, HTMLDimension::Relative), result[1]); | 197 ASSERT_EQ(HTMLDimension(0, HTMLDimension::Relative), result[1]); |
198 ASSERT_EQ(HTMLDimension(8., HTMLDimension::Percentage), result[2]); | 198 ASSERT_EQ(HTMLDimension(8., HTMLDimension::Percentage), result[2]); |
199 } | 199 } |
200 | 200 |
| 201 TEST(HTMLDimensionTest, parseDimensionValueEmptyString) { |
| 202 HTMLDimension dimension; |
| 203 EXPECT_FALSE(parseDimensionValue(String(""), dimension)); |
| 204 } |
| 205 |
| 206 TEST(HTMLDimensionTest, parseDimensionValueSpacesOnly) { |
| 207 HTMLDimension dimension; |
| 208 EXPECT_FALSE(parseDimensionValue(String(" "), dimension)); |
| 209 } |
| 210 |
| 211 TEST(HTMLDimensionTest, parseDimensionValueAllowedSpaces) { |
| 212 HTMLDimension dimension; |
| 213 EXPECT_TRUE(parseDimensionValue(String(" \t\f\r\n10"), dimension)); |
| 214 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Absolute), dimension); |
| 215 } |
| 216 |
| 217 TEST(HTMLDimensionTest, parseDimensionValueLeadingPlus) { |
| 218 HTMLDimension dimension; |
| 219 EXPECT_FALSE(parseDimensionValue(String("+10"), dimension)); |
| 220 } |
| 221 |
| 222 TEST(HTMLDimensionTest, parseDimensionValueAbsolute) { |
| 223 HTMLDimension dimension; |
| 224 EXPECT_TRUE(parseDimensionValue(String("10"), dimension)); |
| 225 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Absolute), dimension); |
| 226 } |
| 227 |
| 228 TEST(HTMLDimensionTest, parseDimensionValueAbsoluteFraction) { |
| 229 HTMLDimension dimension; |
| 230 EXPECT_TRUE(parseDimensionValue(String("10.50"), dimension)); |
| 231 EXPECT_EQ(HTMLDimension(10.5, HTMLDimension::Absolute), dimension); |
| 232 } |
| 233 |
| 234 TEST(HTMLDimensionTest, parseDimensionValueAbsoluteDotNoFraction) { |
| 235 HTMLDimension dimension; |
| 236 EXPECT_TRUE(parseDimensionValue(String("10.%"), dimension)); |
| 237 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Percentage), dimension); |
| 238 } |
| 239 |
| 240 TEST(HTMLDimensionTest, parseDimensionValueAbsoluteTrailingGarbage) { |
| 241 HTMLDimension dimension; |
| 242 EXPECT_TRUE(parseDimensionValue(String("10foo"), dimension)); |
| 243 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Absolute), dimension); |
| 244 } |
| 245 |
| 246 TEST(HTMLDimensionTest, parseDimensionValueAbsoluteTrailingGarbageAfterSpace) { |
| 247 HTMLDimension dimension; |
| 248 EXPECT_TRUE(parseDimensionValue(String("10 foo"), dimension)); |
| 249 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Absolute), dimension); |
| 250 } |
| 251 |
| 252 TEST(HTMLDimensionTest, parseDimensionValuePercentage) { |
| 253 HTMLDimension dimension; |
| 254 EXPECT_TRUE(parseDimensionValue(String("10%"), dimension)); |
| 255 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Percentage), dimension); |
| 256 } |
| 257 |
| 258 TEST(HTMLDimensionTest, parseDimensionValueRelative) { |
| 259 HTMLDimension dimension; |
| 260 EXPECT_TRUE(parseDimensionValue(String("10*"), dimension)); |
| 261 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Relative), dimension); |
| 262 } |
| 263 |
| 264 TEST(HTMLDimensionTest, parseDimensionValueInvalidNumberFormatDot) { |
| 265 HTMLDimension dimension; |
| 266 EXPECT_FALSE(parseDimensionValue(String(".50"), dimension)); |
| 267 } |
| 268 |
| 269 TEST(HTMLDimensionTest, parseDimensionValueInvalidNumberFormatExponent) { |
| 270 HTMLDimension dimension; |
| 271 EXPECT_TRUE(parseDimensionValue(String("10e10"), dimension)); |
| 272 EXPECT_EQ(HTMLDimension(10, HTMLDimension::Absolute), dimension); |
| 273 } |
| 274 |
201 } // namespace blink | 275 } // namespace blink |
OLD | NEW |