| Index: ui/views/controls/single_split_view_unittest.cc
|
| diff --git a/ui/views/controls/single_split_view_unittest.cc b/ui/views/controls/single_split_view_unittest.cc
|
| index f82c1b5b090f30ae36e743f91f697923f7a87c9b..67022f8d0ef68a4da731055f65268ad846fcbf8b 100644
|
| --- a/ui/views/controls/single_split_view_unittest.cc
|
| +++ b/ui/views/controls/single_split_view_unittest.cc
|
| @@ -2,15 +2,12 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| +#include "ui/views/controls/single_split_view.h"
|
| +
|
| #include "base/logging.h"
|
| -#include "testing/gmock/include/gmock/gmock.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| -#include "ui/views/controls/single_split_view.h"
|
| #include "ui/views/controls/single_split_view_listener.h"
|
|
|
| -using ::testing::_;
|
| -using ::testing::Return;
|
| -
|
| namespace {
|
|
|
| static void VerifySplitViewLayout(const views::SingleSplitView& split) {
|
| @@ -44,9 +41,21 @@ static void VerifySplitViewLayout(const views::SingleSplitView& split) {
|
| }
|
| }
|
|
|
| -class MockObserver : public views::SingleSplitViewListener {
|
| +class SingleSplitViewListenerImpl : public views::SingleSplitViewListener {
|
| public:
|
| - MOCK_METHOD1(SplitHandleMoved, bool(views::SingleSplitView*));
|
| + SingleSplitViewListenerImpl() : count_(0) {}
|
| +
|
| + virtual bool SplitHandleMoved(views::SingleSplitView* sender) OVERRIDE {
|
| + ++count_;
|
| + return false;
|
| + }
|
| +
|
| + int count() const { return count_; }
|
| +
|
| + private:
|
| + int count_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(SingleSplitViewListenerImpl);
|
| };
|
|
|
| class MinimumSizedView: public views::View {
|
| @@ -141,20 +150,14 @@ TEST(SingleSplitViewTest, Resize) {
|
| }
|
|
|
| TEST(SingleSplitViewTest, MouseDrag) {
|
| - MockObserver observer;
|
| const int kMinimumChildSize = 25;
|
| MinimumSizedView *child0 =
|
| new MinimumSizedView(gfx::Size(5, kMinimumChildSize));
|
| MinimumSizedView *child1 =
|
| new MinimumSizedView(gfx::Size(5, kMinimumChildSize));
|
| + SingleSplitViewListenerImpl listener;
|
| SingleSplitView split(
|
| - child0, child1, SingleSplitView::VERTICAL_SPLIT, &observer);
|
| -
|
| - ON_CALL(observer, SplitHandleMoved(_))
|
| - .WillByDefault(Return(true));
|
| - // SplitHandleMoved is called for two mouse moves and one mouse capture loss.
|
| - EXPECT_CALL(observer, SplitHandleMoved(_))
|
| - .Times(5);
|
| + child0, child1, SingleSplitView::VERTICAL_SPLIT, &listener);
|
|
|
| const int kTotalSplitSize = 100;
|
| split.SetBounds(0, 0, 10, kTotalSplitSize);
|
| @@ -169,6 +172,7 @@ TEST(SingleSplitViewTest, MouseDrag) {
|
| ui::ET_MOUSE_PRESSED, press_point, press_point, 0);
|
| ASSERT_TRUE(split.OnMousePressed(mouse_pressed));
|
| EXPECT_EQ(kInitialDividerOffset, split.divider_offset());
|
| + EXPECT_EQ(0, listener.count());
|
|
|
| // Drag divider to the bottom.
|
| gfx::Point drag_1_point(
|
| @@ -177,6 +181,7 @@ TEST(SingleSplitViewTest, MouseDrag) {
|
| ui::ET_MOUSE_DRAGGED, drag_1_point, drag_1_point, 0);
|
| ASSERT_TRUE(split.OnMouseDragged(mouse_dragged_1));
|
| EXPECT_EQ(kInitialDividerOffset + kMouseMoveDelta, split.divider_offset());
|
| + EXPECT_EQ(1, listener.count());
|
|
|
| // Drag divider to the top, beyond first child minimum size.
|
| gfx::Point drag_2_point(
|
| @@ -184,8 +189,8 @@ TEST(SingleSplitViewTest, MouseDrag) {
|
| ui::MouseEvent mouse_dragged_2(
|
| ui::ET_MOUSE_DRAGGED, drag_2_point, drag_2_point, 0);
|
| ASSERT_TRUE(split.OnMouseDragged(mouse_dragged_2));
|
| - EXPECT_EQ(kMinimumChildSize,
|
| - split.divider_offset());
|
| + EXPECT_EQ(kMinimumChildSize, split.divider_offset());
|
| + EXPECT_EQ(2, listener.count());
|
|
|
| // Drag divider to the bottom, beyond second child minimum size.
|
| gfx::Point drag_3_point(
|
| @@ -195,6 +200,7 @@ TEST(SingleSplitViewTest, MouseDrag) {
|
| ASSERT_TRUE(split.OnMouseDragged(mouse_dragged_3));
|
| EXPECT_EQ(kTotalSplitSize - kMinimumChildSize - split.GetDividerSize(),
|
| split.divider_offset());
|
| + EXPECT_EQ(3, listener.count());
|
|
|
| // Drag divider between childs' minimum sizes.
|
| gfx::Point drag_4_point(
|
| @@ -204,6 +210,7 @@ TEST(SingleSplitViewTest, MouseDrag) {
|
| ASSERT_TRUE(split.OnMouseDragged(mouse_dragged_4));
|
| EXPECT_EQ(kInitialDividerOffset + kMouseMoveDelta * 2,
|
| split.divider_offset());
|
| + EXPECT_EQ(4, listener.count());
|
|
|
| gfx::Point release_point(
|
| 7, kInitialDividerOffset + kMouseOffset + kMouseMoveDelta * 2);
|
| @@ -217,6 +224,7 @@ TEST(SingleSplitViewTest, MouseDrag) {
|
| // This shouldn't occur after mouse release, but it's sufficient for testing.
|
| split.OnMouseCaptureLost();
|
| EXPECT_EQ(kInitialDividerOffset, split.divider_offset());
|
| + EXPECT_EQ(5, listener.count());
|
| }
|
|
|
| } // namespace views
|
|
|