summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraelias <aelias@chromium.org>2015-02-09 14:42:20 -0800
committerCommit bot <commit-bot@chromium.org>2015-02-09 22:43:07 +0000
commit2c00a9a6c962300efed56e630aabbf49144c2d64 (patch)
treed4d0498a40ef524bdf8c915a3d30585789286c9e
parentad90351f940b2ff53df05700c1aa9081b6858e1f (diff)
downloadchromium_src-2c00a9a6c962300efed56e630aabbf49144c2d64.zip
chromium_src-2c00a9a6c962300efed56e630aabbf49144c2d64.tar.gz
chromium_src-2c00a9a6c962300efed56e630aabbf49144c2d64.tar.bz2
Deflake and reenable top controls tests.
Windows bots had trouble with the expectations in the animation loops. Because of floating point inaccuracies, the top controls offset could be exactly the same during the last two frames of the animation, because the shown ratio was just off the minimum and that delta disappeared when multiplying by the height. This switches to checking the ratio itself, which should match the same value that the animation system uses to check if the next frame is needed. BUG=456617 Review URL: https://codereview.chromium.org/907143002 Cr-Commit-Position: refs/heads/master@{#315416}
-rw-r--r--cc/input/top_controls_manager_unittest.cc59
1 files changed, 27 insertions, 32 deletions
diff --git a/cc/input/top_controls_manager_unittest.cc b/cc/input/top_controls_manager_unittest.cc
index bc2a9f16..16d0e5d 100644
--- a/cc/input/top_controls_manager_unittest.cc
+++ b/cc/input/top_controls_manager_unittest.cc
@@ -135,8 +135,7 @@ TEST(TopControlsManagerTest, EnsureScrollThresholdApplied) {
manager->ScrollEnd();
}
-// Flaky. See http://crbug.com/456617.
-TEST(TopControlsManagerTest, DISABLED_PartialShownHideAnimation) {
+TEST(TopControlsManagerTest, PartialShownHideAnimation) {
MockTopControlsManagerClient client(100.f, 0.5f, 0.5f);
TopControlsManager* manager = client.manager();
manager->ScrollBegin();
@@ -154,12 +153,12 @@ TEST(TopControlsManagerTest, DISABLED_PartialShownHideAnimation) {
EXPECT_TRUE(manager->animation());
base::TimeTicks time = gfx::FrameTime::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_LT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_LT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset());
@@ -184,12 +183,12 @@ TEST(TopControlsManagerTest, PartialShownShowAnimation) {
EXPECT_TRUE(manager->animation());
base::TimeTicks time = gfx::FrameTime::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_GT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_GT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset());
@@ -210,21 +209,19 @@ TEST(TopControlsManagerTest, PartialHiddenWithAmbiguousThresholdShows) {
EXPECT_TRUE(manager->animation());
base::TimeTicks time = gfx::FrameTime::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_GT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_GT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset());
EXPECT_FLOAT_EQ(100.f, manager->ContentTopOffset());
}
-// Flaky. See http://crbug.com/456617.
-TEST(TopControlsManagerTest,
- DISABLED_PartialHiddenWithAmbiguousThresholdHides) {
+TEST(TopControlsManagerTest, PartialHiddenWithAmbiguousThresholdHides) {
MockTopControlsManagerClient client(100.f, 0.25f, 0.25f);
TopControlsManager* manager = client.manager();
@@ -238,19 +235,19 @@ TEST(TopControlsManagerTest,
EXPECT_TRUE(manager->animation());
base::TimeTicks time = gfx::FrameTime::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_LT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_LT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset());
EXPECT_FLOAT_EQ(0.f, manager->ContentTopOffset());
}
-TEST(TopControlsManagerTest, DISABLED_PartialShownWithAmbiguousThresholdHides) {
+TEST(TopControlsManagerTest, PartialShownWithAmbiguousThresholdHides) {
MockTopControlsManagerClient client(100.f, 0.25f, 0.25f);
TopControlsManager* manager = client.manager();
@@ -268,12 +265,12 @@ TEST(TopControlsManagerTest, DISABLED_PartialShownWithAmbiguousThresholdHides) {
EXPECT_TRUE(manager->animation());
base::TimeTicks time = gfx::FrameTime::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_LT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_LT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(-100.f, manager->ControlsTopOffset());
@@ -298,12 +295,12 @@ TEST(TopControlsManagerTest, PartialShownWithAmbiguousThresholdShows) {
EXPECT_TRUE(manager->animation());
base::TimeTicks time = gfx::FrameTime::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_GT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_GT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset());
@@ -339,8 +336,7 @@ TEST(TopControlsManagerTest, PinchIgnoresScroll) {
EXPECT_TRUE(manager->animation());
}
-// Flaky. See http://crbug.com/456617.
-TEST(TopControlsManagerTest, DISABLED_PinchBeginStartsAnimationIfNecessary) {
+TEST(TopControlsManagerTest, PinchBeginStartsAnimationIfNecessary) {
MockTopControlsManagerClient client(100.f, 0.5f, 0.5f);
TopControlsManager* manager = client.manager();
@@ -362,12 +358,12 @@ TEST(TopControlsManagerTest, DISABLED_PinchBeginStartsAnimationIfNecessary) {
EXPECT_TRUE(manager->animation());
base::TimeTicks time = base::TimeTicks::Now();
- float previous_offset = manager->ControlsTopOffset();
+ float previous;
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_LT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_LT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
@@ -383,12 +379,11 @@ TEST(TopControlsManagerTest, DISABLED_PinchBeginStartsAnimationIfNecessary) {
EXPECT_TRUE(manager->animation());
time = base::TimeTicks::Now();
- previous_offset = manager->ControlsTopOffset();
while (manager->animation()) {
+ previous = manager->TopControlsShownRatio();
time = base::TimeDelta::FromMicroseconds(100) + time;
manager->Animate(time);
- EXPECT_GT(manager->ControlsTopOffset(), previous_offset);
- previous_offset = manager->ControlsTopOffset();
+ EXPECT_GT(manager->TopControlsShownRatio(), previous);
}
EXPECT_FALSE(manager->animation());
EXPECT_FLOAT_EQ(0.f, manager->ControlsTopOffset());