Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(484)

Unified Diff: ui/views/animation/ink_drop_animation_controller_factory_unittest.cc

Issue 1544613002: Refactored InkDropAnimationControllerFactoryTests to use TEST_P and (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Set the ink drop size in the InkDropAnimationControllerFactoryTests. Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/animation/ink_drop_animation_controller_factory_unittest.cc
diff --git a/ui/views/animation/ink_drop_animation_controller_factory_unittest.cc b/ui/views/animation/ink_drop_animation_controller_factory_unittest.cc
index eb32904b8a5fea360b1301245143d030205c6962..1743c59355dfc156692ef6956c0b0269026ad88c 100644
--- a/ui/views/animation/ink_drop_animation_controller_factory_unittest.cc
+++ b/ui/views/animation/ink_drop_animation_controller_factory_unittest.cc
@@ -2,13 +2,12 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef UI_VIEWS_ANIMATION_INK_DROP_ANIMATION_CONTROLLER_FACTORY_UNITTEST_H_
-#define UI_VIEWS_ANIMATION_INK_DROP_ANIMATION_CONTROLLER_FACTORY_UNITTEST_H_
-
#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
#include "testing/gtest/include/gtest/gtest.h"
+#include "ui/base/resource/material_design/material_design_controller.h"
#include "ui/base/test/material_design_controller_test_api.h"
+#include "ui/compositor/scoped_animation_duration_scale_mode.h"
#include "ui/views/animation/ink_drop_animation_controller.h"
#include "ui/views/animation/ink_drop_animation_controller_factory.h"
#include "ui/views/animation/ink_drop_host.h"
@@ -17,23 +16,11 @@
namespace views {
-// Macro that will execute |test_code| against all derivatives of the
-// InkDropAnimationController returned by the InkDropAnimationControllerFactory.
-// TODO(bruthig): Refactor these tests to use TEST_P and
-// INSTANTIATE_TEST_CASE_P.
-#define TEST_ALL_INK_DROPS(test_name, test_code) \
- TEST_F(InkDropAnimationControllerFactoryTest, test_name) \
- test_code TEST_F(MDInkDropAnimationControllerFactoryTest, test_name) test_code
-
-// Test fixture to test the non material design InkDropAnimationController.
-class InkDropAnimationControllerFactoryTest : public testing::Test {
+class InkDropAnimationControllerFactoryTest
+ : public testing::TestWithParam<ui::MaterialDesignController::Mode> {
public:
- InkDropAnimationControllerFactoryTest() {}
- ~InkDropAnimationControllerFactoryTest() override {}
-
- // testing::Test:
- void SetUp() override;
- void TearDown() override;
+ InkDropAnimationControllerFactoryTest();
+ ~InkDropAnimationControllerFactoryTest();
protected:
// A dummy InkDropHost required to create an InkDropAnimationController.
@@ -44,130 +31,102 @@ class InkDropAnimationControllerFactoryTest : public testing::Test {
scoped_ptr<InkDropAnimationController> ink_drop_animation_controller_;
private:
+ scoped_ptr<ui::ScopedAnimationDurationScaleMode> zero_duration_mode_;
+
DISALLOW_COPY_AND_ASSIGN(InkDropAnimationControllerFactoryTest);
};
-void InkDropAnimationControllerFactoryTest::SetUp() {
+InkDropAnimationControllerFactoryTest::InkDropAnimationControllerFactoryTest()
+ : ink_drop_animation_controller_(nullptr) {
// Any call by a previous test to MaterialDesignController::GetMode() will
// initialize and cache the mode. This ensures that these tests will run from
// a non-initialized state.
ui::test::MaterialDesignControllerTestAPI::UninitializeMode();
-
- ink_drop_animation_controller_ =
+ ui::test::MaterialDesignControllerTestAPI::SetMode(GetParam());
+ ink_drop_animation_controller_.reset(
InkDropAnimationControllerFactory::CreateInkDropAnimationController(
- &test_ink_drop_host_);
+ &test_ink_drop_host_)
+ .release());
+ ink_drop_animation_controller_->SetInkDropSize(gfx::Size(10, 10), 4,
+ gfx::Size(8, 8), 2);
+
+ zero_duration_mode_.reset(new ui::ScopedAnimationDurationScaleMode(
+ ui::ScopedAnimationDurationScaleMode::ZERO_DURATION));
}
-void InkDropAnimationControllerFactoryTest::TearDown() {
+InkDropAnimationControllerFactoryTest::
+ ~InkDropAnimationControllerFactoryTest() {
ui::test::MaterialDesignControllerTestAPI::UninitializeMode();
}
-// Test fixture to test the material design InkDropAnimationController.
-class MDInkDropAnimationControllerFactoryTest
- : public InkDropAnimationControllerFactoryTest {
- public:
- MDInkDropAnimationControllerFactoryTest() {}
+// Note: First argument is optional and intentionally left blank.
+// (it's a prefix for the generated test cases)
+INSTANTIATE_TEST_CASE_P(
+ ,
+ InkDropAnimationControllerFactoryTest,
+ testing::Values(ui::MaterialDesignController::NON_MATERIAL,
+ ui::MaterialDesignController::MATERIAL_NORMAL));
+
+TEST_P(InkDropAnimationControllerFactoryTest,
+ VerifyAllInkDropLayersRemovedAfterDestruction) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_.reset();
+ EXPECT_EQ(0, test_ink_drop_host_.num_ink_drop_layers());
+}
- // InkDropAnimationControllerFactoryTest:
- void SetUp() override;
+TEST_P(InkDropAnimationControllerFactoryTest, StateIsHiddenInitially) {
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
+}
- private:
- DISALLOW_COPY_AND_ASSIGN(MDInkDropAnimationControllerFactoryTest);
-};
+TEST_P(InkDropAnimationControllerFactoryTest, TypicalQuickAction) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::QUICK_ACTION);
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
+}
-void MDInkDropAnimationControllerFactoryTest::SetUp() {
- ui::test::MaterialDesignControllerTestAPI::SetMode(
- ui::MaterialDesignController::MATERIAL_NORMAL);
- InkDropAnimationControllerFactoryTest::SetUp();
+TEST_P(InkDropAnimationControllerFactoryTest, CancelQuickAction) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::HIDDEN);
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
}
-TEST_ALL_INK_DROPS(VerifyAllInkDropLayersRemovedAfterDestruction,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_.reset();
- EXPECT_EQ(0, test_ink_drop_host_.num_ink_drop_layers());
- })
-
-TEST_ALL_INK_DROPS(StateIsHiddenInitially,
- {
- EXPECT_EQ(
- InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
-
-TEST_ALL_INK_DROPS(TypicalQuickAction,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::QUICK_ACTION);
- EXPECT_EQ(
- InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
-
-TEST_ALL_INK_DROPS(CancelQuickAction,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::HIDDEN);
- EXPECT_EQ(
- InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
-
-TEST_ALL_INK_DROPS(TypicalSlowAction,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::SLOW_ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::SLOW_ACTION);
- EXPECT_EQ(
- InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
-
-TEST_ALL_INK_DROPS(CancelSlowAction,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::SLOW_ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::HIDDEN);
- EXPECT_EQ(
- InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
-
-TEST_ALL_INK_DROPS(
- TypicalQuickActivated,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(InkDropState::ACTIVATED);
- ink_drop_animation_controller_->AnimateToState(InkDropState::DEACTIVATED);
- EXPECT_EQ(InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
-
-TEST_ALL_INK_DROPS(
- TypicalSlowActivated,
- {
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(
- InkDropState::SLOW_ACTION_PENDING);
- ink_drop_animation_controller_->AnimateToState(InkDropState::ACTIVATED);
- ink_drop_animation_controller_->AnimateToState(InkDropState::DEACTIVATED);
- EXPECT_EQ(InkDropState::HIDDEN,
- ink_drop_animation_controller_->GetInkDropState());
- })
+TEST_P(InkDropAnimationControllerFactoryTest, TypicalSlowAction) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(
+ InkDropState::SLOW_ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::SLOW_ACTION);
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
+}
-} // namespace views
+TEST_P(InkDropAnimationControllerFactoryTest, CancelSlowAction) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(
+ InkDropState::SLOW_ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::HIDDEN);
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
+}
-#endif // UI_VIEWS_ANIMATION_INK_DROP_ANIMATION_CONTROLLER_FACTORY_UNITTEST_H_
+TEST_P(InkDropAnimationControllerFactoryTest, TypicalQuickActivated) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTIVATED);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::DEACTIVATED);
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
+}
+
+TEST_P(InkDropAnimationControllerFactoryTest, TypicalSlowActivated) {
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(
+ InkDropState::SLOW_ACTION_PENDING);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::ACTIVATED);
+ ink_drop_animation_controller_->AnimateToState(InkDropState::DEACTIVATED);
+ EXPECT_EQ(InkDropState::HIDDEN,
+ ink_drop_animation_controller_->GetInkDropState());
+}
+
+} // namespace views
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698