| Index: Source/core/animation/LengthBoxStyleInterpolationTest.cpp
|
| diff --git a/Source/core/animation/LengthBoxStyleInterpolationTest.cpp b/Source/core/animation/LengthBoxStyleInterpolationTest.cpp
|
| index ca8101992a5b8c2a4dd8909cdf42a3b488267376..a7f649494903a37ff0f50c4aaa67e4d3918d1488 100644
|
| --- a/Source/core/animation/LengthBoxStyleInterpolationTest.cpp
|
| +++ b/Source/core/animation/LengthBoxStyleInterpolationTest.cpp
|
| @@ -7,7 +7,7 @@
|
|
|
| #include "core/animation/LengthStyleInterpolation.h"
|
| #include "core/css/CSSPrimitiveValue.h"
|
| -#include "core/css/Rect.h"
|
| +#include "core/css/CSSQuadValue.h"
|
| #include "core/css/StylePropertySet.h"
|
|
|
| #include <gtest/gtest.h>
|
| @@ -31,10 +31,10 @@ protected:
|
| return interpolableValueToLengthBox(lengthBoxToInterpolableValue(*value).get(), *value, *value);
|
| }
|
|
|
| - static void testPrimitiveValue(RefPtrWillBeRawPtr<CSSValue> value, double left, double right, double top, double bottom, CSSPrimitiveValue::UnitType unitType)
|
| + static void testQuadValue(RefPtrWillBeRawPtr<CSSValue> value, double left, double right, double top, double bottom, CSSPrimitiveValue::UnitType unitType)
|
| {
|
| - EXPECT_TRUE(value->isPrimitiveValue());
|
| - Rect* rect = toCSSPrimitiveValue(value.get())->getRectValue();
|
| + EXPECT_TRUE(value->isQuadValue());
|
| + RefPtrWillBeRawPtr<CSSQuadValue> rect = toCSSQuadValue(value.get());
|
|
|
| EXPECT_EQ(rect->left()->getDoubleValue(), left);
|
| EXPECT_EQ(rect->right()->getDoubleValue(), right);
|
| @@ -50,73 +50,66 @@ protected:
|
|
|
| TEST_F(AnimationLengthBoxStyleInterpolationTest, ZeroLengthBox)
|
| {
|
| - RefPtrWillBeRawPtr<Rect> rectPx = Rect::create();
|
| - rectPx->setLeft(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setRight(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setTop(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setBottom(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels));
|
| - RefPtrWillBeRawPtr<CSSValue> value = roundTrip(CSSPrimitiveValue::create(rectPx.release()));
|
| - testPrimitiveValue(value, 0, 0, 0, 0, CSSPrimitiveValue::UnitType::Pixels);
|
| -
|
| - RefPtrWillBeRawPtr<Rect> rectEms = Rect::create();
|
| - rectEms->setLeft(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems));
|
| - rectEms->setRight(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems));
|
| - rectEms->setTop(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems));
|
| - rectEms->setBottom(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems));
|
| -
|
| - value = roundTrip(CSSPrimitiveValue::create(rectEms.release()));
|
| - testPrimitiveValue(value, 0, 0, 0, 0, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> left = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> right = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> top = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottom = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSValue> value = roundTrip(CSSQuadValue::createRect(top, right, bottom, left));
|
| + testQuadValue(value, 0, 0, 0, 0, CSSPrimitiveValue::UnitType::Pixels);
|
| +
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> leftEms = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> rightEms = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> topEms = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottomEms = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Ems);
|
| +
|
| + value = roundTrip(CSSQuadValue::createRect(topEms, rightEms, bottomEms, leftEms));
|
| + testQuadValue(value, 0, 0, 0, 0, CSSPrimitiveValue::UnitType::Ems);
|
| }
|
|
|
| TEST_F(AnimationLengthBoxStyleInterpolationTest, SingleUnitBox)
|
| {
|
| - RefPtrWillBeRawPtr<Rect> rectPx = Rect::create();
|
| - rectPx->setLeft(CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setRight(CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setTop(CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setBottom(CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels));
|
| -
|
| - RefPtrWillBeRawPtr<CSSValue> value = roundTrip(CSSPrimitiveValue::create(rectPx.release()));
|
| - testPrimitiveValue(value, 10, 10, 10, 10, CSSPrimitiveValue::UnitType::Pixels);
|
| -
|
| - RefPtrWillBeRawPtr<Rect> rectPer = Rect::create();
|
| - rectPer->setLeft(CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage));
|
| - rectPer->setRight(CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage));
|
| - rectPer->setTop(CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage));
|
| - rectPer->setBottom(CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage));
|
| -
|
| - value = roundTrip(CSSPrimitiveValue::create(rectPer.release()));
|
| - testPrimitiveValue(value, 30, 30, 30, 30, CSSPrimitiveValue::UnitType::Percentage);
|
| -
|
| - RefPtrWillBeRawPtr<Rect> rectEms = Rect::create();
|
| - rectEms->setLeft(CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems));
|
| - rectEms->setRight(CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems));
|
| - rectEms->setTop(CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems));
|
| - rectEms->setBottom(CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems));
|
| -
|
| - value = roundTrip(CSSPrimitiveValue::create(rectEms.release()));
|
| - testPrimitiveValue(value, -10, -10, -10, -10, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> leftPx = CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> rightPx = CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> topPx = CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottomPx = CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels);
|
| +
|
| + RefPtrWillBeRawPtr<CSSValue> value = roundTrip(CSSQuadValue::createRect(topPx, rightPx, bottomPx, leftPx));
|
| + testQuadValue(value, 10, 10, 10, 10, CSSPrimitiveValue::UnitType::Pixels);
|
| +
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> leftPer = CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> rightPer = CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> topPer = CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottomPer = CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage);
|
| +
|
| + value = roundTrip(CSSQuadValue::createRect(topPer, rightPer, bottomPer, leftPer));
|
| + testQuadValue(value, 30, 30, 30, 30, CSSPrimitiveValue::UnitType::Percentage);
|
| +
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> leftEms = CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> rightEms = CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> topEms = CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottomEms = CSSPrimitiveValue::create(-10, CSSPrimitiveValue::UnitType::Ems);
|
| +
|
| + value = roundTrip(CSSQuadValue::createRect(topEms, rightEms, bottomEms, leftEms));
|
| + testQuadValue(value, -10, -10, -10, -10, CSSPrimitiveValue::UnitType::Ems);
|
| }
|
|
|
| TEST_F(AnimationLengthBoxStyleInterpolationTest, MultipleValues)
|
| {
|
| - RefPtrWillBeRawPtr<Rect> rectPx = Rect::create();
|
| - rectPx->setLeft(CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setRight(CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setTop(CSSPrimitiveValue::create(20, CSSPrimitiveValue::UnitType::Pixels));
|
| - rectPx->setBottom(CSSPrimitiveValue::create(40, CSSPrimitiveValue::UnitType::Pixels));
|
| -
|
| - RefPtrWillBeRawPtr<CSSValue> value = roundTrip(CSSPrimitiveValue::create(rectPx.release()));
|
| - testPrimitiveValue(value, 10, 0, 20, 40, CSSPrimitiveValue::UnitType::Pixels);
|
| -
|
| - RefPtrWillBeRawPtr<Rect> rectPer = Rect::create();
|
| - rectPer->setLeft(CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage));
|
| - rectPer->setRight(CSSPrimitiveValue::create(-30, CSSPrimitiveValue::UnitType::Percentage));
|
| - rectPer->setTop(CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage));
|
| - rectPer->setBottom(CSSPrimitiveValue::create(-30, CSSPrimitiveValue::UnitType::Percentage));
|
| -
|
| - value = roundTrip(CSSPrimitiveValue::create(rectPer.release()));
|
| - testPrimitiveValue(value, 30, -30, 30, -30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> leftPx = CSSPrimitiveValue::create(10, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> rightPx = CSSPrimitiveValue::create(0, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> topPx = CSSPrimitiveValue::create(20, CSSPrimitiveValue::UnitType::Pixels);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottomPx = CSSPrimitiveValue::create(40, CSSPrimitiveValue::UnitType::Pixels);
|
| +
|
| + RefPtrWillBeRawPtr<CSSValue> value = roundTrip(CSSQuadValue::createRect(topPx, rightPx, bottomPx, leftPx));
|
| + testQuadValue(value, 10, 0, 20, 40, CSSPrimitiveValue::UnitType::Pixels);
|
| +
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> leftPer = CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> rightPer = CSSPrimitiveValue::create(-30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> topPer = CSSPrimitiveValue::create(30, CSSPrimitiveValue::UnitType::Percentage);
|
| + RefPtrWillBeRawPtr<CSSPrimitiveValue> bottomPer = CSSPrimitiveValue::create(-30, CSSPrimitiveValue::UnitType::Percentage);
|
| +
|
| + value = roundTrip(CSSQuadValue::createRect(topPer, rightPer, bottomPer, leftPer));
|
| + testQuadValue(value, 30, -30, 30, -30, CSSPrimitiveValue::UnitType::Percentage);
|
| }
|
|
|
| }
|
|
|