| 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 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 49 | 49 |
| 50 class AnimationAnimatableLengthTest : public ::testing::Test { | 50 class AnimationAnimatableLengthTest : public ::testing::Test { |
| 51 protected: | 51 protected: |
| 52 AnimationAnimatableLengthTest() | 52 AnimationAnimatableLengthTest() |
| 53 : style(RenderStyle::createDefaultStyle()) | 53 : style(RenderStyle::createDefaultStyle()) |
| 54 , conversionDataZoom1(style.get(), style.get(), 0, 0, 1.0f) | 54 , conversionDataZoom1(style.get(), style.get(), 0, 0, 1.0f) |
| 55 , conversionDataZoom3(style.get(), style.get(), 0, 0, 3.0f) | 55 , conversionDataZoom3(style.get(), style.get(), 0, 0, 3.0f) |
| 56 { | 56 { |
| 57 } | 57 } |
| 58 | 58 |
| 59 PassRefPtr<AnimatableLength> create(double value, CSSPrimitiveValue::UnitTyp
es type) | 59 PassRefPtrWillBeRawPtr<AnimatableLength> create(double value, CSSPrimitiveVa
lue::UnitTypes type) |
| 60 { | 60 { |
| 61 return AnimatableLength::create(CSSPrimitiveValue::create(value, type).g
et()); | 61 return AnimatableLength::create(CSSPrimitiveValue::create(value, type).g
et()); |
| 62 } | 62 } |
| 63 | 63 |
| 64 PassRefPtr<AnimatableLength> create(double valueLeft, CSSPrimitiveValue::Uni
tTypes typeLeft, double valueRight, CSSPrimitiveValue::UnitTypes typeRight) | 64 PassRefPtrWillBeRawPtr<AnimatableLength> create(double valueLeft, CSSPrimiti
veValue::UnitTypes typeLeft, double valueRight, CSSPrimitiveValue::UnitTypes typ
eRight) |
| 65 { | 65 { |
| 66 return AnimatableLength::create(createCalc(valueLeft, typeLeft, valueRig
ht, typeRight).get()); | 66 return AnimatableLength::create(createCalc(valueLeft, typeLeft, valueRig
ht, typeRight).get()); |
| 67 } | 67 } |
| 68 | 68 |
| 69 PassRefPtrWillBeRawPtr<CSSCalcValue> createCalc(double valueLeft, CSSPrimiti
veValue::UnitTypes typeLeft, double valueRight, CSSPrimitiveValue::UnitTypes typ
eRight) | 69 PassRefPtrWillBeRawPtr<CSSCalcValue> createCalc(double valueLeft, CSSPrimiti
veValue::UnitTypes typeLeft, double valueRight, CSSPrimitiveValue::UnitTypes typ
eRight) |
| 70 { | 70 { |
| 71 return CSSCalcValue::create(CSSCalcValue::createExpressionNode( | 71 return CSSCalcValue::create(CSSCalcValue::createExpressionNode( |
| 72 CSSCalcValue::createExpressionNode(CSSPrimitiveValue::create(valueLe
ft, typeLeft), valueLeft == trunc(valueLeft)), | 72 CSSCalcValue::createExpressionNode(CSSPrimitiveValue::create(valueLe
ft, typeLeft), valueLeft == trunc(valueLeft)), |
| 73 CSSCalcValue::createExpressionNode(CSSPrimitiveValue::create(valueRi
ght, typeRight), valueRight == trunc(valueRight)), | 73 CSSCalcValue::createExpressionNode(CSSPrimitiveValue::create(valueRi
ght, typeRight), valueRight == trunc(valueRight)), |
| 74 CalcAdd | 74 CalcAdd |
| 75 )); | 75 )); |
| 76 } | 76 } |
| 77 | 77 |
| 78 PassRefPtrWillBeRawPtr<CSSValue> toCSSValue(CSSValue* cssValue) | 78 PassRefPtrWillBeRawPtr<CSSValue> toCSSValue(CSSValue* cssValue) |
| 79 { | 79 { |
| 80 return AnimatableLength::create(cssValue)->toCSSValue(); | 80 return AnimatableLength::create(cssValue)->toCSSValue(); |
| 81 } | 81 } |
| 82 | 82 |
| 83 AnimatableLength::NumberUnitType commonUnitType(PassRefPtr<AnimatableLength>
a, PassRefPtr<AnimatableLength> b) | 83 AnimatableLength::NumberUnitType commonUnitType(PassRefPtrWillBeRawPtr<Anima
tableLength> a, PassRefPtrWillBeRawPtr<AnimatableLength> b) |
| 84 { | 84 { |
| 85 return a->commonUnitType(b.get()); | 85 return a->commonUnitType(b.get()); |
| 86 } | 86 } |
| 87 | 87 |
| 88 bool isUnitlessZero(PassRefPtr<AnimatableLength> a) | 88 bool isUnitlessZero(PassRefPtrWillBeRawPtr<AnimatableLength> a) |
| 89 { | 89 { |
| 90 return a->isUnitlessZero(); | 90 return a->isUnitlessZero(); |
| 91 } | 91 } |
| 92 | 92 |
| 93 RefPtr<RenderStyle> style; | 93 RefPtr<RenderStyle> style; |
| 94 CSSToLengthConversionData conversionDataZoom1; | 94 CSSToLengthConversionData conversionDataZoom1; |
| 95 CSSToLengthConversionData conversionDataZoom3; | 95 CSSToLengthConversionData conversionDataZoom3; |
| 96 }; | 96 }; |
| 97 | 97 |
| 98 TEST_F(AnimationAnimatableLengthTest, CanCreateFrom) | 98 TEST_F(AnimationAnimatableLengthTest, CanCreateFrom) |
| (...skipping 109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 208 adoptPtr(new CalcExpressionBinaryOperation( | 208 adoptPtr(new CalcExpressionBinaryOperation( |
| 209 adoptPtr(new CalcExpressionLength(Length(-15, WebCore::Fixed))), | 209 adoptPtr(new CalcExpressionLength(Length(-15, WebCore::Fixed))), |
| 210 adoptPtr(new CalcExpressionLength(Length(-5, Percent))), | 210 adoptPtr(new CalcExpressionLength(Length(-5, Percent))), |
| 211 CalcAdd)), | 211 CalcAdd)), |
| 212 ValueRangeNonNegative)), | 212 ValueRangeNonNegative)), |
| 213 create(-5, CSSPrimitiveValue::CSS_PX, -5, CSSPrimitiveValue::CSS_PERCENT
AGE)->toLength(conversionDataZoom3, NonNegativeValues)); | 213 create(-5, CSSPrimitiveValue::CSS_PX, -5, CSSPrimitiveValue::CSS_PERCENT
AGE)->toLength(conversionDataZoom3, NonNegativeValues)); |
| 214 } | 214 } |
| 215 | 215 |
| 216 TEST_F(AnimationAnimatableLengthTest, Interpolate) | 216 TEST_F(AnimationAnimatableLengthTest, Interpolate) |
| 217 { | 217 { |
| 218 RefPtr<AnimatableLength> from10px = create(10, CSSPrimitiveValue::CSS_PX); | 218 RefPtrWillBeRawPtr<AnimatableLength> from10px = create(10, CSSPrimitiveValue
::CSS_PX); |
| 219 RefPtr<AnimatableLength> to20pxAsInches = create(20.0 / 96, CSSPrimitiveValu
e::CSS_IN); | 219 RefPtrWillBeRawPtr<AnimatableLength> to20pxAsInches = create(20.0 / 96, CSSP
rimitiveValue::CSS_IN); |
| 220 | 220 |
| 221 EXPECT_REFV_EQ(create(5, CSSPrimitiveValue::CSS_PX), | 221 EXPECT_REFV_EQ(create(5, CSSPrimitiveValue::CSS_PX), |
| 222 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), -0.5)
); | 222 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), -0.5)
); |
| 223 | 223 |
| 224 EXPECT_REFV_EQ(create(10, CSSPrimitiveValue::CSS_PX), | 224 EXPECT_REFV_EQ(create(10, CSSPrimitiveValue::CSS_PX), |
| 225 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0)); | 225 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0)); |
| 226 EXPECT_REFV_EQ(create(14, CSSPrimitiveValue::CSS_PX), | 226 EXPECT_REFV_EQ(create(14, CSSPrimitiveValue::CSS_PX), |
| 227 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0.4)
); | 227 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0.4)
); |
| 228 EXPECT_REFV_EQ(create(15, CSSPrimitiveValue::CSS_PX), | 228 EXPECT_REFV_EQ(create(15, CSSPrimitiveValue::CSS_PX), |
| 229 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0.5)
); | 229 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0.5)
); |
| 230 EXPECT_REFV_EQ(create(16, CSSPrimitiveValue::CSS_PX), | 230 EXPECT_REFV_EQ(create(16, CSSPrimitiveValue::CSS_PX), |
| 231 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0.6)
); | 231 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 0.6)
); |
| 232 EXPECT_REFV_EQ(create(20.0 / 96, CSSPrimitiveValue::CSS_IN), | 232 EXPECT_REFV_EQ(create(20.0 / 96, CSSPrimitiveValue::CSS_IN), |
| 233 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 1)); | 233 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 1)); |
| 234 EXPECT_REFV_EQ(create(25, CSSPrimitiveValue::CSS_PX), | 234 EXPECT_REFV_EQ(create(25, CSSPrimitiveValue::CSS_PX), |
| 235 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 1.5)
); | 235 AnimatableValue::interpolate(from10px.get(), to20pxAsInches.get(), 1.5)
); |
| 236 | 236 |
| 237 RefPtr<AnimatableLength> from10em = create(10, CSSPrimitiveValue::CSS_EMS); | 237 RefPtrWillBeRawPtr<AnimatableLength> from10em = create(10, CSSPrimitiveValue
::CSS_EMS); |
| 238 RefPtr<AnimatableLength> to20rem = create(20, CSSPrimitiveValue::CSS_REMS); | 238 RefPtrWillBeRawPtr<AnimatableLength> to20rem = create(20, CSSPrimitiveValue:
:CSS_REMS); |
| 239 EXPECT_REFV_EQ(create(15, CSSPrimitiveValue::CSS_EMS, -10, CSSPrimitiveValue
::CSS_REMS), | 239 EXPECT_REFV_EQ(create(15, CSSPrimitiveValue::CSS_EMS, -10, CSSPrimitiveValue
::CSS_REMS), |
| 240 AnimatableValue::interpolate(from10em.get(), to20rem.get(), -0.5)); | 240 AnimatableValue::interpolate(from10em.get(), to20rem.get(), -0.5)); |
| 241 EXPECT_REFV_EQ(create(10, CSSPrimitiveValue::CSS_EMS), | 241 EXPECT_REFV_EQ(create(10, CSSPrimitiveValue::CSS_EMS), |
| 242 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0)); | 242 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0)); |
| 243 EXPECT_REFV_EQ(create(6, CSSPrimitiveValue::CSS_EMS, 8, CSSPrimitiveValue::C
SS_REMS), | 243 EXPECT_REFV_EQ(create(6, CSSPrimitiveValue::CSS_EMS, 8, CSSPrimitiveValue::C
SS_REMS), |
| 244 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0.4)); | 244 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0.4)); |
| 245 EXPECT_REFV_EQ(create(5, CSSPrimitiveValue::CSS_EMS, 10, CSSPrimitiveValue::
CSS_REMS), | 245 EXPECT_REFV_EQ(create(5, CSSPrimitiveValue::CSS_EMS, 10, CSSPrimitiveValue::
CSS_REMS), |
| 246 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0.5)); | 246 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0.5)); |
| 247 EXPECT_REFV_EQ(create(4, CSSPrimitiveValue::CSS_EMS, 12, CSSPrimitiveValue::
CSS_REMS), | 247 EXPECT_REFV_EQ(create(4, CSSPrimitiveValue::CSS_EMS, 12, CSSPrimitiveValue::
CSS_REMS), |
| 248 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0.6)); | 248 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 0.6)); |
| 249 EXPECT_REFV_EQ(create(20, CSSPrimitiveValue::CSS_REMS), | 249 EXPECT_REFV_EQ(create(20, CSSPrimitiveValue::CSS_REMS), |
| 250 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 1)); | 250 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 1)); |
| 251 EXPECT_REFV_EQ(create(-5, CSSPrimitiveValue::CSS_EMS, 30, CSSPrimitiveValue:
:CSS_REMS), | 251 EXPECT_REFV_EQ(create(-5, CSSPrimitiveValue::CSS_EMS, 30, CSSPrimitiveValue:
:CSS_REMS), |
| 252 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 1.5)); | 252 AnimatableValue::interpolate(from10em.get(), to20rem.get(), 1.5)); |
| 253 | 253 |
| 254 // Zero values are typeless and hence we can don't get a calc | 254 // Zero values are typeless and hence we can don't get a calc |
| 255 RefPtr<AnimatableLength> from0px = create(0, CSSPrimitiveValue::CSS_PX); | 255 RefPtrWillBeRawPtr<AnimatableLength> from0px = create(0, CSSPrimitiveValue::
CSS_PX); |
| 256 EXPECT_REFV_EQ(create(-10, CSSPrimitiveValue::CSS_REMS), | 256 EXPECT_REFV_EQ(create(-10, CSSPrimitiveValue::CSS_REMS), |
| 257 AnimatableValue::interpolate(from0px.get(), to20rem.get(), -0.5)); | 257 AnimatableValue::interpolate(from0px.get(), to20rem.get(), -0.5)); |
| 258 // At t=0, interpolate always returns the "from" value. | 258 // At t=0, interpolate always returns the "from" value. |
| 259 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PX), | 259 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PX), |
| 260 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 0)); | 260 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 0)); |
| 261 EXPECT_REFV_EQ(create(10, CSSPrimitiveValue::CSS_REMS), | 261 EXPECT_REFV_EQ(create(10, CSSPrimitiveValue::CSS_REMS), |
| 262 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 0.5)); | 262 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 0.5)); |
| 263 EXPECT_REFV_EQ(create(20, CSSPrimitiveValue::CSS_REMS), | 263 EXPECT_REFV_EQ(create(20, CSSPrimitiveValue::CSS_REMS), |
| 264 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 1.0)); | 264 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 1.0)); |
| 265 EXPECT_REFV_EQ(create(30, CSSPrimitiveValue::CSS_REMS), | 265 EXPECT_REFV_EQ(create(30, CSSPrimitiveValue::CSS_REMS), |
| 266 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 1.5)); | 266 AnimatableValue::interpolate(from0px.get(), to20rem.get(), 1.5)); |
| 267 | 267 |
| 268 // Except 0% which is special | 268 // Except 0% which is special |
| 269 RefPtr<AnimatableLength> from0percent = create(0, CSSPrimitiveValue::CSS_PER
CENTAGE); | 269 RefPtrWillBeRawPtr<AnimatableLength> from0percent = create(0, CSSPrimitiveVa
lue::CSS_PERCENTAGE); |
| 270 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE, -10, CSSPrimitiv
eValue::CSS_REMS), | 270 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE, -10, CSSPrimitiv
eValue::CSS_REMS), |
| 271 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), -0.5)); | 271 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), -0.5)); |
| 272 // At t=0, interpolate always returns the "from" value. | 272 // At t=0, interpolate always returns the "from" value. |
| 273 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE), | 273 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE), |
| 274 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), 0)); | 274 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), 0)); |
| 275 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE, 10, CSSPrimitive
Value::CSS_REMS), | 275 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE, 10, CSSPrimitive
Value::CSS_REMS), |
| 276 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), 0.5)); | 276 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), 0.5)); |
| 277 // At t=1, interpolate always returns the "to" value. | 277 // At t=1, interpolate always returns the "to" value. |
| 278 EXPECT_REFV_EQ(create(20, CSSPrimitiveValue::CSS_REMS), | 278 EXPECT_REFV_EQ(create(20, CSSPrimitiveValue::CSS_REMS), |
| 279 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), 1.0)); | 279 AnimatableValue::interpolate(from0percent.get(), to20rem.get(), 1.0)); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 291 create(10, CSSPrimitiveValue::CSS_EMS, 20, CSSPrimitiveValue::CSS_REMS), | 291 create(10, CSSPrimitiveValue::CSS_EMS, 20, CSSPrimitiveValue::CSS_REMS), |
| 292 AnimatableValue::add(create(10, CSSPrimitiveValue::CSS_EMS).get(), creat
e(20, CSSPrimitiveValue::CSS_REMS).get())); | 292 AnimatableValue::add(create(10, CSSPrimitiveValue::CSS_EMS).get(), creat
e(20, CSSPrimitiveValue::CSS_REMS).get())); |
| 293 EXPECT_REFV_EQ( | 293 EXPECT_REFV_EQ( |
| 294 create(10, CSSPrimitiveValue::CSS_EMS), | 294 create(10, CSSPrimitiveValue::CSS_EMS), |
| 295 AnimatableValue::add(create(10, CSSPrimitiveValue::CSS_EMS).get(), creat
e(0, CSSPrimitiveValue::CSS_REMS).get())); | 295 AnimatableValue::add(create(10, CSSPrimitiveValue::CSS_EMS).get(), creat
e(0, CSSPrimitiveValue::CSS_REMS).get())); |
| 296 EXPECT_REFV_EQ( | 296 EXPECT_REFV_EQ( |
| 297 create(20, CSSPrimitiveValue::CSS_REMS), | 297 create(20, CSSPrimitiveValue::CSS_REMS), |
| 298 AnimatableValue::add(create(0, CSSPrimitiveValue::CSS_EMS).get(), create
(20, CSSPrimitiveValue::CSS_REMS).get())); | 298 AnimatableValue::add(create(0, CSSPrimitiveValue::CSS_EMS).get(), create
(20, CSSPrimitiveValue::CSS_REMS).get())); |
| 299 | 299 |
| 300 // Check you actually get the reference back for zero optimization | 300 // Check you actually get the reference back for zero optimization |
| 301 RefPtr<AnimatableLength> rems20 = create(20, CSSPrimitiveValue::CSS_REMS); | 301 RefPtrWillBeRawPtr<AnimatableLength> rems20 = create(20, CSSPrimitiveValue::
CSS_REMS); |
| 302 EXPECT_EQ(rems20.get(), AnimatableValue::add(create(0, CSSPrimitiveValue::CS
S_EMS).get(), rems20.get()).get()); | 302 EXPECT_EQ(rems20.get(), AnimatableValue::add(create(0, CSSPrimitiveValue::CS
S_EMS).get(), rems20.get()).get()); |
| 303 EXPECT_EQ(rems20.get(), AnimatableValue::add(rems20.get(), create(0, CSSPrim
itiveValue::CSS_EMS).get()).get()); | 303 EXPECT_EQ(rems20.get(), AnimatableValue::add(rems20.get(), create(0, CSSPrim
itiveValue::CSS_EMS).get()).get()); |
| 304 | 304 |
| 305 // Except 0% which is special | 305 // Except 0% which is special |
| 306 RefPtr<AnimatableLength> zeropercent = create(0, CSSPrimitiveValue::CSS_PERC
ENTAGE); | 306 RefPtrWillBeRawPtr<AnimatableLength> zeropercent = create(0, CSSPrimitiveVal
ue::CSS_PERCENTAGE); |
| 307 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE, -10, CSSPrimitiv
eValue::CSS_REMS), | 307 EXPECT_REFV_EQ(create(0, CSSPrimitiveValue::CSS_PERCENTAGE, -10, CSSPrimitiv
eValue::CSS_REMS), |
| 308 AnimatableValue::add(zeropercent.get(), create(-10, CSSPrimitiveValue::C
SS_REMS).get())); | 308 AnimatableValue::add(zeropercent.get(), create(-10, CSSPrimitiveValue::C
SS_REMS).get())); |
| 309 EXPECT_REFV_EQ(create(-10, CSSPrimitiveValue::CSS_REMS, 0, CSSPrimitiveValue
::CSS_PERCENTAGE), | 309 EXPECT_REFV_EQ(create(-10, CSSPrimitiveValue::CSS_REMS, 0, CSSPrimitiveValue
::CSS_PERCENTAGE), |
| 310 AnimatableValue::add(create(-10, CSSPrimitiveValue::CSS_REMS).get(), zer
opercent.get())); | 310 AnimatableValue::add(create(-10, CSSPrimitiveValue::CSS_REMS).get(), zer
opercent.get())); |
| 311 } | 311 } |
| 312 | 312 |
| 313 TEST_F(AnimationAnimatableLengthTest, IsUnitless) | 313 TEST_F(AnimationAnimatableLengthTest, IsUnitless) |
| 314 { | 314 { |
| 315 EXPECT_TRUE(isUnitlessZero(create(0, CSSPrimitiveValue::CSS_PX))); | 315 EXPECT_TRUE(isUnitlessZero(create(0, CSSPrimitiveValue::CSS_PX))); |
| 316 EXPECT_FALSE(isUnitlessZero(create(0, CSSPrimitiveValue::CSS_PERCENTAGE))); | 316 EXPECT_FALSE(isUnitlessZero(create(0, CSSPrimitiveValue::CSS_PERCENTAGE))); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 328 EXPECT_FALSE(isUnitlessZero(create(4, CSSPrimitiveValue::CSS_EXS))); | 328 EXPECT_FALSE(isUnitlessZero(create(4, CSSPrimitiveValue::CSS_EXS))); |
| 329 EXPECT_FALSE(isUnitlessZero(create(5, CSSPrimitiveValue::CSS_REMS))); | 329 EXPECT_FALSE(isUnitlessZero(create(5, CSSPrimitiveValue::CSS_REMS))); |
| 330 EXPECT_FALSE(isUnitlessZero(create(6, CSSPrimitiveValue::CSS_VW))); | 330 EXPECT_FALSE(isUnitlessZero(create(6, CSSPrimitiveValue::CSS_VW))); |
| 331 EXPECT_FALSE(isUnitlessZero(create(7, CSSPrimitiveValue::CSS_VH))); | 331 EXPECT_FALSE(isUnitlessZero(create(7, CSSPrimitiveValue::CSS_VH))); |
| 332 EXPECT_FALSE(isUnitlessZero(create(8, CSSPrimitiveValue::CSS_VMIN))); | 332 EXPECT_FALSE(isUnitlessZero(create(8, CSSPrimitiveValue::CSS_VMIN))); |
| 333 EXPECT_FALSE(isUnitlessZero(create(9, CSSPrimitiveValue::CSS_VMAX))); | 333 EXPECT_FALSE(isUnitlessZero(create(9, CSSPrimitiveValue::CSS_VMAX))); |
| 334 } | 334 } |
| 335 | 335 |
| 336 TEST_F(AnimationAnimatableLengthTest, CommonUnitType) | 336 TEST_F(AnimationAnimatableLengthTest, CommonUnitType) |
| 337 { | 337 { |
| 338 RefPtr<AnimatableLength> length10px = create(10, CSSPrimitiveValue::CSS_PX); | 338 RefPtrWillBeRawPtr<AnimatableLength> length10px = create(10, CSSPrimitiveVal
ue::CSS_PX); |
| 339 EXPECT_EQ(AnimatableLength::UnitTypePixels, commonUnitType(length10px, crea
te(1, CSSPrimitiveValue::CSS_PX).get())); | 339 EXPECT_EQ(AnimatableLength::UnitTypePixels, commonUnitType(length10px, crea
te(1, CSSPrimitiveValue::CSS_PX).get())); |
| 340 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 340 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 341 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
3, CSSPrimitiveValue::CSS_EMS).get())); | 341 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
3, CSSPrimitiveValue::CSS_EMS).get())); |
| 342 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); | 342 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); |
| 343 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 343 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length10px, create(
0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 344 | 344 |
| 345 RefPtr<AnimatableLength> length0px = create(0, CSSPrimitiveValue::CSS_PX); | 345 RefPtrWillBeRawPtr<AnimatableLength> length0px = create(0, CSSPrimitiveValue
::CSS_PX); |
| 346 EXPECT_EQ(AnimatableLength::UnitTypePixels, commonUnitType(length0px, cr
eate(1, CSSPrimitiveValue::CSS_PX).get())); | 346 EXPECT_EQ(AnimatableLength::UnitTypePixels, commonUnitType(length0px, cr
eate(1, CSSPrimitiveValue::CSS_PX).get())); |
| 347 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0px, cr
eate(2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 347 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0px, cr
eate(2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 348 EXPECT_EQ(AnimatableLength::UnitTypeFontSize, commonUnitType(length0px, cr
eate(3, CSSPrimitiveValue::CSS_EMS).get())); | 348 EXPECT_EQ(AnimatableLength::UnitTypeFontSize, commonUnitType(length0px, cr
eate(3, CSSPrimitiveValue::CSS_EMS).get())); |
| 349 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0px, creat
e(4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); | 349 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0px, creat
e(4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); |
| 350 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0px, cr
eate(0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 350 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0px, cr
eate(0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 351 | 351 |
| 352 RefPtr<AnimatableLength> length0percent = create(0, CSSPrimitiveValue::CSS_P
ERCENTAGE); | 352 RefPtrWillBeRawPtr<AnimatableLength> length0percent = create(0, CSSPrimitive
Value::CSS_PERCENTAGE); |
| 353 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0percent,
create(1, CSSPrimitiveValue::CSS_PX).get())); | 353 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0percent,
create(1, CSSPrimitiveValue::CSS_PX).get())); |
| 354 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0percen
t, create(2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 354 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0percen
t, create(2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 355 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0percent,
create(3, CSSPrimitiveValue::CSS_EMS).get())); | 355 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0percent,
create(3, CSSPrimitiveValue::CSS_EMS).get())); |
| 356 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0percent,
create(4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); | 356 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(length0percent,
create(4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); |
| 357 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0percen
t, create(0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 357 EXPECT_EQ(AnimatableLength::UnitTypePercentage, commonUnitType(length0percen
t, create(0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 358 | 358 |
| 359 RefPtr<AnimatableLength> lengthCalc = create(3, CSSPrimitiveValue::CSS_PX, 5
, CSSPrimitiveValue::CSS_CM); | 359 RefPtrWillBeRawPtr<AnimatableLength> lengthCalc = create(3, CSSPrimitiveValu
e::CSS_PX, 5, CSSPrimitiveValue::CSS_CM); |
| 360 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
1, CSSPrimitiveValue::CSS_PX).get())); | 360 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
1, CSSPrimitiveValue::CSS_PX).get())); |
| 361 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 361 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
2, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 362 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
3, CSSPrimitiveValue::CSS_EMS).get())); | 362 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
3, CSSPrimitiveValue::CSS_EMS).get())); |
| 363 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); | 363 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
4, CSSPrimitiveValue::CSS_PX, 5, CSSPrimitiveValue::CSS_CM).get())); |
| 364 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); | 364 EXPECT_EQ(AnimatableLength::UnitTypeCalc, commonUnitType(lengthCalc, create(
0, CSSPrimitiveValue::CSS_PERCENTAGE).get())); |
| 365 } | 365 } |
| 366 | 366 |
| 367 } // namespace WebCore | 367 } // namespace WebCore |
| OLD | NEW |