OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ash/drag_drop/drag_drop_controller.h" | 5 #include "ash/drag_drop/drag_drop_controller.h" |
6 | 6 |
7 #include "ash/drag_drop/drag_image_view.h" | 7 #include "ash/drag_drop/drag_image_view.h" |
8 #include "ash/shell.h" | 8 #include "ash/shell.h" |
9 #include "ash/test/ash_test_base.h" | 9 #include "ash/test/ash_test_base.h" |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
335 } | 335 } |
336 | 336 |
337 protected: | 337 protected: |
338 scoped_ptr<TestDragDropController> drag_drop_controller_; | 338 scoped_ptr<TestDragDropController> drag_drop_controller_; |
339 scoped_ptr<views::TestViewsDelegate> views_delegate_; | 339 scoped_ptr<views::TestViewsDelegate> views_delegate_; |
340 | 340 |
341 private: | 341 private: |
342 DISALLOW_COPY_AND_ASSIGN(DragDropControllerTest); | 342 DISALLOW_COPY_AND_ASSIGN(DragDropControllerTest); |
343 }; | 343 }; |
344 | 344 |
345 TEST_F(DragDropControllerTest, DragDropInSingleViewTest) { | 345 // TODO(win_aura) http://crbug.com/154081 |
| 346 #if defined(OS_WIN) |
| 347 #define MAYBE_DragDropInSingleViewTest DISABLED_DragDropInSingleViewTest |
| 348 #else |
| 349 #define MAYBE_DragDropInSingleViewTest DragDropInSingleViewTest |
| 350 #endif |
| 351 TEST_F(DragDropControllerTest, MAYBE_DragDropInSingleViewTest) { |
346 scoped_ptr<views::Widget> widget(CreateNewWidget()); | 352 scoped_ptr<views::Widget> widget(CreateNewWidget()); |
347 DragTestView* drag_view = new DragTestView; | 353 DragTestView* drag_view = new DragTestView; |
348 AddViewToWidgetAndResize(widget.get(), drag_view); | 354 AddViewToWidgetAndResize(widget.get(), drag_view); |
349 ui::OSExchangeData data; | 355 ui::OSExchangeData data; |
350 data.SetString(UTF8ToUTF16("I am being dragged")); | 356 data.SetString(UTF8ToUTF16("I am being dragged")); |
351 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), | 357 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), |
352 widget->GetNativeView()); | 358 widget->GetNativeView()); |
353 generator.PressLeftButton(); | 359 generator.PressLeftButton(); |
354 | 360 |
355 int num_drags = 17; | 361 int num_drags = 17; |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
419 EXPECT_TRUE(drag_drop_controller_->drop_received_); | 425 EXPECT_TRUE(drag_drop_controller_->drop_received_); |
420 | 426 |
421 EXPECT_EQ(1, drag_view->num_drag_enters_); | 427 EXPECT_EQ(1, drag_view->num_drag_enters_); |
422 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold() + 1, | 428 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold() + 1, |
423 drag_view->num_drag_updates_); | 429 drag_view->num_drag_updates_); |
424 EXPECT_EQ(1, drag_view->num_drops_); | 430 EXPECT_EQ(1, drag_view->num_drops_); |
425 EXPECT_EQ(0, drag_view->num_drag_exits_); | 431 EXPECT_EQ(0, drag_view->num_drag_exits_); |
426 EXPECT_TRUE(drag_view->drag_done_received_); | 432 EXPECT_TRUE(drag_view->drag_done_received_); |
427 } | 433 } |
428 | 434 |
429 TEST_F(DragDropControllerTest, DragDropInMultipleViewsSingleWidgetTest) { | 435 // TODO(win_aura) http://crbug.com/154081 |
| 436 #if defined(OS_WIN) |
| 437 #define MAYBE_DragDropInMultipleViewsSingleWidgetTest DISABLED_DragDropInMultipl
eViewsSingleWidgetTest |
| 438 #else |
| 439 #define MAYBE_DragDropInMultipleViewsSingleWidgetTest DragDropInMultipleViewsSin
gleWidgetTest |
| 440 #endif |
| 441 TEST_F(DragDropControllerTest, MAYBE_DragDropInMultipleViewsSingleWidgetTest) { |
430 scoped_ptr<views::Widget> widget(CreateNewWidget()); | 442 scoped_ptr<views::Widget> widget(CreateNewWidget()); |
431 DragTestView* drag_view1 = new DragTestView; | 443 DragTestView* drag_view1 = new DragTestView; |
432 AddViewToWidgetAndResize(widget.get(), drag_view1); | 444 AddViewToWidgetAndResize(widget.get(), drag_view1); |
433 DragTestView* drag_view2 = new DragTestView; | 445 DragTestView* drag_view2 = new DragTestView; |
434 AddViewToWidgetAndResize(widget.get(), drag_view2); | 446 AddViewToWidgetAndResize(widget.get(), drag_view2); |
435 | 447 |
436 ui::OSExchangeData data; | 448 ui::OSExchangeData data; |
437 data.SetString(UTF8ToUTF16("I am being dragged")); | 449 data.SetString(UTF8ToUTF16("I am being dragged")); |
438 | 450 |
439 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); | 451 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
474 EXPECT_TRUE(drag_view1->drag_done_received_); | 486 EXPECT_TRUE(drag_view1->drag_done_received_); |
475 | 487 |
476 EXPECT_EQ(1, drag_view2->num_drag_enters_); | 488 EXPECT_EQ(1, drag_view2->num_drag_enters_); |
477 num_expected_updates = num_drags - num_expected_updates - 1; | 489 num_expected_updates = num_drags - num_expected_updates - 1; |
478 EXPECT_EQ(num_expected_updates, drag_view2->num_drag_updates_); | 490 EXPECT_EQ(num_expected_updates, drag_view2->num_drag_updates_); |
479 EXPECT_EQ(1, drag_view2->num_drops_); | 491 EXPECT_EQ(1, drag_view2->num_drops_); |
480 EXPECT_EQ(0, drag_view2->num_drag_exits_); | 492 EXPECT_EQ(0, drag_view2->num_drag_exits_); |
481 EXPECT_FALSE(drag_view2->drag_done_received_); | 493 EXPECT_FALSE(drag_view2->drag_done_received_); |
482 } | 494 } |
483 | 495 |
484 TEST_F(DragDropControllerTest, DragDropInMultipleViewsMultipleWidgetsTest) { | 496 // TODO(win_aura) http://crbug.com/154081 |
| 497 #if defined(OS_WIN) |
| 498 #define MAYBE_DragDropInMultipleViewsMultipleWidgetsTest DISABLED_DragDropInMult
ipleViewsMultipleWidgetsTest |
| 499 #else |
| 500 #define MAYBE_DragDropInMultipleViewsMultipleWidgetsTest DragDropInMultipleViews
MultipleWidgetsTest |
| 501 #endif |
| 502 TEST_F(DragDropControllerTest, MAYBE_DragDropInMultipleViewsMultipleWidgetsTest)
{ |
485 scoped_ptr<views::Widget> widget1(CreateNewWidget()); | 503 scoped_ptr<views::Widget> widget1(CreateNewWidget()); |
486 DragTestView* drag_view1 = new DragTestView; | 504 DragTestView* drag_view1 = new DragTestView; |
487 AddViewToWidgetAndResize(widget1.get(), drag_view1); | 505 AddViewToWidgetAndResize(widget1.get(), drag_view1); |
488 scoped_ptr<views::Widget> widget2(CreateNewWidget()); | 506 scoped_ptr<views::Widget> widget2(CreateNewWidget()); |
489 DragTestView* drag_view2 = new DragTestView; | 507 DragTestView* drag_view2 = new DragTestView; |
490 AddViewToWidgetAndResize(widget2.get(), drag_view2); | 508 AddViewToWidgetAndResize(widget2.get(), drag_view2); |
491 gfx::Rect widget1_bounds = widget1->GetClientAreaBoundsInScreen(); | 509 gfx::Rect widget1_bounds = widget1->GetClientAreaBoundsInScreen(); |
492 gfx::Rect widget2_bounds = widget2->GetClientAreaBoundsInScreen(); | 510 gfx::Rect widget2_bounds = widget2->GetClientAreaBoundsInScreen(); |
493 widget2->SetBounds(gfx::Rect(widget1_bounds.width(), 0, | 511 widget2->SetBounds(gfx::Rect(widget1_bounds.width(), 0, |
494 widget2_bounds.width(), widget2_bounds.height())); | 512 widget2_bounds.width(), widget2_bounds.height())); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
533 EXPECT_TRUE(drag_view1->drag_done_received_); | 551 EXPECT_TRUE(drag_view1->drag_done_received_); |
534 | 552 |
535 EXPECT_EQ(1, drag_view2->num_drag_enters_); | 553 EXPECT_EQ(1, drag_view2->num_drag_enters_); |
536 num_expected_updates = num_drags - num_expected_updates - 1; | 554 num_expected_updates = num_drags - num_expected_updates - 1; |
537 EXPECT_EQ(num_expected_updates, drag_view2->num_drag_updates_); | 555 EXPECT_EQ(num_expected_updates, drag_view2->num_drag_updates_); |
538 EXPECT_EQ(1, drag_view2->num_drops_); | 556 EXPECT_EQ(1, drag_view2->num_drops_); |
539 EXPECT_EQ(0, drag_view2->num_drag_exits_); | 557 EXPECT_EQ(0, drag_view2->num_drag_exits_); |
540 EXPECT_FALSE(drag_view2->drag_done_received_); | 558 EXPECT_FALSE(drag_view2->drag_done_received_); |
541 } | 559 } |
542 | 560 |
543 TEST_F(DragDropControllerTest, ViewRemovedWhileInDragDropTest) { | 561 // TODO(win_aura) http://crbug.com/154081 |
| 562 #if defined(OS_WIN) |
| 563 #define MAYBE_ViewRemovedWhileInDragDropTest DISABLED_ViewRemovedWhileInDragDrop
Test |
| 564 #else |
| 565 #define MAYBE_ViewRemovedWhileInDragDropTest ViewRemovedWhileInDragDropTest |
| 566 #endif |
| 567 TEST_F(DragDropControllerTest, MAYBE_ViewRemovedWhileInDragDropTest) { |
544 scoped_ptr<views::Widget> widget(CreateNewWidget()); | 568 scoped_ptr<views::Widget> widget(CreateNewWidget()); |
545 scoped_ptr<DragTestView> drag_view(new DragTestView); | 569 scoped_ptr<DragTestView> drag_view(new DragTestView); |
546 AddViewToWidgetAndResize(widget.get(), drag_view.get()); | 570 AddViewToWidgetAndResize(widget.get(), drag_view.get()); |
547 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint(); | 571 gfx::Point point = gfx::Rect(drag_view->bounds()).CenterPoint(); |
548 ui::OSExchangeData data; | 572 ui::OSExchangeData data; |
549 data.SetString(UTF8ToUTF16("I am being dragged")); | 573 data.SetString(UTF8ToUTF16("I am being dragged")); |
550 | 574 |
551 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); | 575 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow()); |
552 generator.MoveMouseToCenterOf(widget->GetNativeView()); | 576 generator.MoveMouseToCenterOf(widget->GetNativeView()); |
553 generator.PressLeftButton(); | 577 generator.PressLeftButton(); |
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
718 drag_drop_controller_->drag_string_); | 742 drag_drop_controller_->drag_string_); |
719 | 743 |
720 EXPECT_EQ(1, drag_view->num_drag_enters_); | 744 EXPECT_EQ(1, drag_view->num_drag_enters_); |
721 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(), | 745 EXPECT_EQ(num_drags - 1 - drag_view->VerticalDragThreshold(), |
722 drag_view->num_drag_updates_); | 746 drag_view->num_drag_updates_); |
723 EXPECT_EQ(1, drag_view->num_drops_); | 747 EXPECT_EQ(1, drag_view->num_drops_); |
724 EXPECT_EQ(0, drag_view->num_drag_exits_); | 748 EXPECT_EQ(0, drag_view->num_drag_exits_); |
725 EXPECT_TRUE(drag_view->drag_done_received_); | 749 EXPECT_TRUE(drag_view->drag_done_received_); |
726 } | 750 } |
727 | 751 |
728 TEST_F(DragDropControllerTest, PressingEscapeCancelsDragDrop) { | 752 // TODO(win_aura) http://crbug.com/154081 |
| 753 #if defined(OS_WIN) |
| 754 #define MAYBE_PressingEscapeCancelsDragDrop DISABLED_PressingEscapeCancelsDragDr
op |
| 755 #else |
| 756 #define MAYBE_PressingEscapeCancelsDragDrop PressingEscapeCancelsDragDrop |
| 757 #endif |
| 758 TEST_F(DragDropControllerTest, MAYBE_PressingEscapeCancelsDragDrop) { |
729 scoped_ptr<views::Widget> widget(CreateNewWidget()); | 759 scoped_ptr<views::Widget> widget(CreateNewWidget()); |
730 DragTestView* drag_view = new DragTestView; | 760 DragTestView* drag_view = new DragTestView; |
731 AddViewToWidgetAndResize(widget.get(), drag_view); | 761 AddViewToWidgetAndResize(widget.get(), drag_view); |
732 ui::OSExchangeData data; | 762 ui::OSExchangeData data; |
733 data.SetString(UTF8ToUTF16("I am being dragged")); | 763 data.SetString(UTF8ToUTF16("I am being dragged")); |
734 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), | 764 aura::test::EventGenerator generator(Shell::GetPrimaryRootWindow(), |
735 widget->GetNativeView()); | 765 widget->GetNativeView()); |
736 generator.PressLeftButton(); | 766 generator.PressLeftButton(); |
737 | 767 |
738 int num_drags = 17; | 768 int num_drags = 17; |
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
979 EXPECT_EQ("405,405", observer.window_location_on_destroying().ToString()); | 1009 EXPECT_EQ("405,405", observer.window_location_on_destroying().ToString()); |
980 } | 1010 } |
981 for (Shell::RootWindowList::iterator iter = root_windows.begin(); | 1011 for (Shell::RootWindowList::iterator iter = root_windows.begin(); |
982 iter != root_windows.end(); ++iter) { | 1012 iter != root_windows.end(); ++iter) { |
983 aura::client::SetDragDropClient(*iter, NULL); | 1013 aura::client::SetDragDropClient(*iter, NULL); |
984 } | 1014 } |
985 } | 1015 } |
986 | 1016 |
987 } // namespace test | 1017 } // namespace test |
988 } // namespace aura | 1018 } // namespace aura |
OLD | NEW |