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

Side by Side Diff: ash/wm/workspace/workspace_window_resizer_unittest.cc

Issue 11364052: Revert "Disabled WorkspaceWindowResizerTest.Edge since it got broken by https://chromiumcodereview.… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ash/wm/workspace/workspace_window_resizer.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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/wm/workspace/workspace_window_resizer.h" 5 #include "ash/wm/workspace/workspace_window_resizer.h"
6 6
7 #include "ash/display/display_controller.h" 7 #include "ash/display/display_controller.h"
8 #include "ash/display/mouse_cursor_event_filter.h" 8 #include "ash/display/mouse_cursor_event_filter.h"
9 #include "ash/root_window_controller.h" 9 #include "ash/root_window_controller.h"
10 #include "ash/screen_ash.h" 10 #include "ash/screen_ash.h"
(...skipping 439 matching lines...) Expand 10 before | Expand all | Expand 10 after
450 EXPECT_EQ("20,500 100x100", window3_->bounds().ToString()); 450 EXPECT_EQ("20,500 100x100", window3_->bounds().ToString());
451 451
452 // 100 up again. 452 // 100 up again.
453 resizer->Drag(CalculateDragPoint(*resizer, -10, -100), 0); 453 resizer->Drag(CalculateDragPoint(*resizer, -10, -100), 0);
454 EXPECT_EQ("0,0 200x100", window_->bounds().ToString()); 454 EXPECT_EQ("0,0 200x100", window_->bounds().ToString());
455 EXPECT_EQ("10,100 200x266", window2_->bounds().ToString()); 455 EXPECT_EQ("10,100 200x266", window2_->bounds().ToString());
456 EXPECT_EQ("20,366 100x134", window3_->bounds().ToString()); 456 EXPECT_EQ("20,366 100x134", window3_->bounds().ToString());
457 } 457 }
458 458
459 // Assertions around dragging to the left/right edge of the screen. 459 // Assertions around dragging to the left/right edge of the screen.
460 // TODO(phoglund): Re-enable once breakage from 460 TEST_F(WorkspaceWindowResizerTest, Edge) {
461 // https://chromiumcodereview.appspot.com/11369017 gets fixed.
462 TEST_F(WorkspaceWindowResizerTest, DISABLED_Edge) {
463 int bottom = 461 int bottom =
464 ScreenAsh::GetDisplayWorkAreaBoundsInParent(window_.get()).bottom(); 462 ScreenAsh::GetDisplayWorkAreaBoundsInParent(window_.get()).bottom();
465 window_->SetBounds(gfx::Rect(20, 30, 50, 60)); 463 window_->SetBounds(gfx::Rect(20, 30, 50, 60));
466 { 464 {
467 scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create( 465 scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
468 window_.get(), gfx::Point(), HTCAPTION, empty_windows())); 466 window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
469 ASSERT_TRUE(resizer.get()); 467 ASSERT_TRUE(resizer.get());
470 resizer->Drag(CalculateDragPoint(*resizer, 0, 10), 0); 468 resizer->Drag(CalculateDragPoint(*resizer, 0, 10), 0);
471 resizer->CompleteDrag(0); 469 resizer->CompleteDrag(0);
472 EXPECT_EQ("0,0 720x" + base::IntToString(bottom), 470 EXPECT_EQ("0,0 720x" + base::IntToString(bottom),
473 window_->bounds().ToString()); 471 window_->bounds().ToString());
474 ASSERT_TRUE(GetRestoreBoundsInScreen(window_.get())); 472 ASSERT_TRUE(GetRestoreBoundsInScreen(window_.get()));
475 EXPECT_EQ("20,30 50x60", 473 EXPECT_EQ("20,30 50x60",
476 GetRestoreBoundsInScreen(window_.get())->ToString()); 474 GetRestoreBoundsInScreen(window_.get())->ToString());
477 } 475 }
478 // Try the same with the right side. 476 // Try the same with the right side.
479 { 477 scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
480 scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create( 478 window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
481 window_.get(), gfx::Point(), HTCAPTION, empty_windows())); 479 ASSERT_TRUE(resizer.get());
482 ASSERT_TRUE(resizer.get()); 480 resizer->Drag(CalculateDragPoint(*resizer, 800, 10), 0);
483 resizer->Drag(CalculateDragPoint(*resizer, 800, 10), 0); 481 resizer->CompleteDrag(0);
484 resizer->CompleteDrag(0); 482 EXPECT_EQ("80,0 720x" + base::IntToString(bottom),
485 EXPECT_EQ("80,0 720x" + base::IntToString(bottom), 483 window_->bounds().ToString());
486 window_->bounds().ToString()); 484 ASSERT_TRUE(GetRestoreBoundsInScreen(window_.get()));
487 ASSERT_TRUE(GetRestoreBoundsInScreen(window_.get())); 485 EXPECT_EQ("20,30 50x60", GetRestoreBoundsInScreen(window_.get())->ToString());
488 EXPECT_EQ("20,30 50x60",
489 GetRestoreBoundsInScreen(window_.get())->ToString());
490 }
491
492 // Test if the restore bounds is correct in multiple displays.
493 ClearRestoreBounds(window_.get());
494 UpdateDisplay("800x600,200x600");
495 Shell::RootWindowList root_windows = Shell::GetAllRootWindows();
496 EXPECT_EQ(root_windows[0], window_->GetRootWindow());
497 window_->SetBoundsInScreen(gfx::Rect(800, 10, 50, 60),
498 ScreenAsh::GetSecondaryDisplay());
499 EXPECT_EQ(root_windows[1], window_->GetRootWindow());
500 {
501 bottom =
502 ScreenAsh::GetDisplayWorkAreaBoundsInParent(window_.get()).bottom();
503 EXPECT_EQ("800,10 50x60", window_->GetBoundsInScreen().ToString());
504
505 scoped_ptr<WorkspaceWindowResizer> resizer(WorkspaceWindowResizer::Create(
506 window_.get(), gfx::Point(), HTCAPTION, empty_windows()));
507 ASSERT_TRUE(resizer.get());
508
509 resizer->Drag(CalculateDragPoint(*resizer, 199, 00), 0);
510 resizer->CompleteDrag(0);
511 EXPECT_EQ("20,0 180x" + base::IntToString(bottom),
512 window_->bounds().ToString());
513 EXPECT_EQ("800,10 50x60",
514 GetRestoreBoundsInScreen(window_.get())->ToString());
515 }
516 } 486 }
517 487
518 // Verifies a window can be moved from the primary display to another. 488 // Verifies a window can be moved from the primary display to another.
519 TEST_F(WorkspaceWindowResizerTest, MAYBE_WindowDragWithMultiDisplays) { 489 TEST_F(WorkspaceWindowResizerTest, MAYBE_WindowDragWithMultiDisplays) {
520 // The secondary display is logically on the right, but on the system (e.g. X) 490 // The secondary display is logically on the right, but on the system (e.g. X)
521 // layer, it's below the primary one. See UpdateDisplay() in ash_test_base.cc. 491 // layer, it's below the primary one. See UpdateDisplay() in ash_test_base.cc.
522 UpdateDisplay("800x600,800x600"); 492 UpdateDisplay("800x600,800x600");
523 shelf_layout_manager()->LayoutShelf(); 493 shelf_layout_manager()->LayoutShelf();
524 Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); 494 Shell::RootWindowList root_windows = Shell::GetAllRootWindows();
525 ASSERT_EQ(2U, root_windows.size()); 495 ASSERT_EQ(2U, root_windows.size());
(...skipping 878 matching lines...) Expand 10 before | Expand all | Expand 10 after
1404 event_filter->WarpMouseCursorIfNecessary(root_windows[1], 1374 event_filter->WarpMouseCursorIfNecessary(root_windows[1],
1405 gfx::Point(400, 200)); 1375 gfx::Point(400, 200));
1406 EXPECT_EQ(1.0f, cursor_test_api.GetDeviceScaleFactor()); 1376 EXPECT_EQ(1.0f, cursor_test_api.GetDeviceScaleFactor());
1407 resizer->CompleteDrag(0); 1377 resizer->CompleteDrag(0);
1408 EXPECT_EQ(1.0f, cursor_test_api.GetDeviceScaleFactor()); 1378 EXPECT_EQ(1.0f, cursor_test_api.GetDeviceScaleFactor());
1409 } 1379 }
1410 } 1380 }
1411 1381
1412 } // namespace internal 1382 } // namespace internal
1413 } // namespace ash 1383 } // namespace ash
OLDNEW
« no previous file with comments | « ash/wm/workspace/workspace_window_resizer.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698