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

Unified Diff: content/browser/web_contents/aura/overscroll_window_delegate_unittest.cc

Issue 1076743003: Revert of Refactor GestureNavigation to eliminate code redundancy (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 8 months 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
Index: content/browser/web_contents/aura/overscroll_window_delegate_unittest.cc
diff --git a/content/browser/web_contents/aura/overscroll_window_delegate_unittest.cc b/content/browser/web_contents/aura/overscroll_window_delegate_unittest.cc
deleted file mode 100644
index 75579d780e4dc3e846079f49edadc3486d36411f..0000000000000000000000000000000000000000
--- a/content/browser/web_contents/aura/overscroll_window_delegate_unittest.cc
+++ /dev/null
@@ -1,242 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "content/browser/web_contents/aura/overscroll_window_delegate.h"
-
-#include "content/browser/renderer_host/overscroll_controller_delegate.h"
-#include "content/public/browser/overscroll_configuration.h"
-#include "testing/gtest/include/gtest/gtest.h"
-#include "ui/aura/test/aura_test_base.h"
-#include "ui/aura/window.h"
-#include "ui/events/gesture_detection/gesture_configuration.h"
-#include "ui/events/test/event_generator.h"
-
-namespace content {
-
-namespace {
-const int kTestWindowWidth = 600;
-}
-
-class OverscrollWindowDelegateTest : public aura::test::AuraTestBase,
- public OverscrollControllerDelegate {
- public:
- OverscrollWindowDelegateTest()
- : window_(nullptr),
- overscroll_complete_(false),
- overscroll_started_(false),
- current_mode_(OVERSCROLL_NONE),
- touch_start_threshold_(content::GetOverscrollConfig(
- content::OVERSCROLL_CONFIG_HORIZ_THRESHOLD_START_TOUCHSCREEN)),
- touch_complete_threshold_(content::GetOverscrollConfig(
- content::OVERSCROLL_CONFIG_HORIZ_THRESHOLD_COMPLETE)) {
- }
-
- ~OverscrollWindowDelegateTest() override {}
-
- void Reset() {
- overscroll_complete_ = false;
- overscroll_started_ = false;
- current_mode_ = OVERSCROLL_NONE;
- window_.reset(CreateNormalWindow(
- 0, root_window(), new OverscrollWindowDelegate(this, gfx::Image())));
- window_->SetBounds(gfx::Rect(0, 0, kTestWindowWidth, kTestWindowWidth));
- }
-
- // Accessors.
- aura::Window* window() { return window_.get(); }
-
- bool overscroll_complete() { return overscroll_complete_; }
- bool overscroll_started() { return overscroll_started_; }
-
- OverscrollMode current_mode() { return current_mode_; }
-
- const float touch_start_threshold() {
- return touch_start_threshold_;
- }
-
- const float touch_complete_threshold() {
- return kTestWindowWidth * touch_complete_threshold_;
- }
-
- protected:
- // aura::test::AuraTestBase:
- void SetUp() override {
- aura::test::AuraTestBase::SetUp();
- Reset();
- ui::GestureConfiguration::GetInstance()
- ->set_max_touch_move_in_pixels_for_click(0);
- }
-
- void TearDown() override {
- window_.reset();
- aura::test::AuraTestBase::TearDown();
- }
-
- private:
- // OverscrollControllerDelegate:
- gfx::Rect GetVisibleBounds() const override {
- return gfx::Rect(kTestWindowWidth, kTestWindowWidth);
- }
-
- bool OnOverscrollUpdate(float delta_x, float delta_y) override {
- return true;
- }
-
- void OnOverscrollComplete(OverscrollMode overscroll_mode) override {
- overscroll_complete_ = true;
- }
-
- void OnOverscrollModeChange(OverscrollMode old_mode,
- OverscrollMode new_mode) override {
- current_mode_ = new_mode;
- if (current_mode_ != OVERSCROLL_NONE)
- overscroll_started_ = true;
- }
-
- // Window in which the overscroll window delegate is installed.
- scoped_ptr<aura::Window> window_;
-
- // State flags.
- bool overscroll_complete_;
- bool overscroll_started_;
-
- OverscrollMode current_mode_;
-
- // Config defined constants.
- const float touch_start_threshold_;
- const float touch_complete_threshold_;
-
- DISALLOW_COPY_AND_ASSIGN(OverscrollWindowDelegateTest);
-};
-
-// Tests that the basic overscroll gesture works and sends updates to the
-// delegate.
-TEST_F(OverscrollWindowDelegateTest, BasicOverscroll) {
- ui::test::EventGenerator generator(root_window());
-
- // Start an OVERSCROLL_EAST gesture.
- generator.GestureScrollSequence(
- gfx::Point(0, 0), gfx::Point(touch_complete_threshold() + 1, 10),
- base::TimeDelta::FromMilliseconds(10), 10);
- EXPECT_TRUE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_EAST);
- EXPECT_TRUE(overscroll_complete());
-
- Reset();
- // Start an OVERSCROLL_WEST gesture.
- generator.GestureScrollSequence(gfx::Point(touch_complete_threshold() + 1, 0),
- gfx::Point(0, 0),
- base::TimeDelta::FromMilliseconds(10), 10);
- EXPECT_TRUE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_WEST);
- EXPECT_TRUE(overscroll_complete());
-}
-
-// Verifies that the OverscrollWindowDelegate direction is set correctly during
-// an overscroll.
-TEST_F(OverscrollWindowDelegateTest, BasicOverscrollModes) {
- ui::test::EventGenerator generator(root_window());
- OverscrollWindowDelegate* delegate =
- static_cast<OverscrollWindowDelegate*>(window()->delegate());
-
- // Start pressing a touch, but do not start the gesture yet.
- generator.MoveTouch(gfx::Point(0, 0));
- generator.PressTouch();
- EXPECT_EQ(delegate->overscroll_mode_, OVERSCROLL_NONE);
-
- // Slide the touch to the right.
- generator.MoveTouch(gfx::Point(touch_complete_threshold() + 1, 0));
- EXPECT_EQ(delegate->overscroll_mode_, OVERSCROLL_EAST);
-
- // Complete the gesture.
- generator.ReleaseTouch();
- EXPECT_EQ(delegate->overscroll_mode_, OVERSCROLL_NONE);
- EXPECT_TRUE(overscroll_complete());
-
- // Start another overscroll.
- generator.MoveTouch(gfx::Point(touch_complete_threshold() + 1, 0));
- generator.PressTouch();
- EXPECT_EQ(delegate->overscroll_mode_, OVERSCROLL_NONE);
-
- // Slide the touch to the left.
- generator.MoveTouch(gfx::Point(0, 0));
- EXPECT_EQ(delegate->overscroll_mode_, OVERSCROLL_WEST);
-
- // Complete the gesture.
- generator.ReleaseTouch();
- EXPECT_EQ(delegate->overscroll_mode_, OVERSCROLL_NONE);
- EXPECT_TRUE(overscroll_complete());
-}
-
-// Tests that the overscroll does not start until the gesture gets past a
-// particular threshold.
-TEST_F(OverscrollWindowDelegateTest, OverscrollThreshold) {
- ui::test::EventGenerator generator(root_window());
-
- // Start an OVERSCROLL_EAST gesture.
- generator.GestureScrollSequence(gfx::Point(0, 0),
- gfx::Point(touch_start_threshold(), 0),
- base::TimeDelta::FromMilliseconds(10), 10);
- EXPECT_FALSE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_NONE);
- EXPECT_FALSE(overscroll_complete());
-
- Reset();
- // Start an OVERSCROLL_WEST gesture.
- generator.GestureScrollSequence(gfx::Point(touch_start_threshold(), 0),
- gfx::Point(0, 0),
- base::TimeDelta::FromMilliseconds(10), 10);
- EXPECT_FALSE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_NONE);
- EXPECT_FALSE(overscroll_complete());
-}
-
-// Tests that the overscroll is aborted if the gesture does not get past the
-// completion threshold.
-TEST_F(OverscrollWindowDelegateTest, AbortOverscrollThreshold) {
- ui::test::EventGenerator generator(root_window());
-
- // Start an OVERSCROLL_EAST gesture.
- generator.GestureScrollSequence(gfx::Point(0, 0),
- gfx::Point(touch_start_threshold() + 1, 0),
- base::TimeDelta::FromMilliseconds(10), 10);
- EXPECT_TRUE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_NONE);
- EXPECT_FALSE(overscroll_complete());
-
- Reset();
- // Start an OVERSCROLL_WEST gesture.
- generator.GestureScrollSequence(gfx::Point(touch_start_threshold() + 1, 0),
- gfx::Point(0, 0),
- base::TimeDelta::FromMilliseconds(10), 10);
- EXPECT_TRUE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_NONE);
- EXPECT_FALSE(overscroll_complete());
-}
-
-// Tests that the overscroll is aborted if the delegate receives some other
-// event.
-TEST_F(OverscrollWindowDelegateTest, EventAbortsOverscroll) {
- ui::test::EventGenerator generator(root_window());
- // Start an OVERSCROLL_EAST gesture, without releasing touch.
- generator.set_current_location(gfx::Point(0, 0));
- generator.PressTouch();
- int touch_x = touch_start_threshold() + 1;
- generator.MoveTouch(gfx::Point(touch_x, 0));
- EXPECT_TRUE(overscroll_started());
- EXPECT_EQ(current_mode(), OVERSCROLL_EAST);
- EXPECT_FALSE(overscroll_complete());
-
- // Dispatch a mouse event, the overscroll should be cancelled.
- generator.PressLeftButton();
- EXPECT_EQ(current_mode(), OVERSCROLL_NONE);
- EXPECT_FALSE(overscroll_complete());
-
- // We should be able to restart the overscroll without lifting the finger.
- generator.MoveTouch(gfx::Point(touch_x + touch_start_threshold() + 1, 0));
- EXPECT_EQ(current_mode(), OVERSCROLL_EAST);
- EXPECT_FALSE(overscroll_complete());
-}
-
-} // namespace content
« no previous file with comments | « content/browser/web_contents/aura/overscroll_window_delegate.cc ('k') | content/browser/web_contents/aura/window_slider.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698