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

Side by Side Diff: ash/display/display_controller_unittest.cc

Issue 16539005: Skip mulitple-dispay tests on win8 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: addressed comment Created 7 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | ash/display/display_error_dialog_unittest.cc » ('j') | 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/display/display_controller.h" 5 #include "ash/display/display_controller.h"
6 6
7 #include "ash/display/display_info.h" 7 #include "ash/display/display_info.h"
8 #include "ash/display/display_manager.h" 8 #include "ash/display/display_manager.h"
9 #include "ash/launcher/launcher.h" 9 #include "ash/launcher/launcher.h"
10 #include "ash/screen_ash.h" 10 #include "ash/screen_ash.h"
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
84 84
85 void SetDefaultDisplayLayout(DisplayLayout::Position position) { 85 void SetDefaultDisplayLayout(DisplayLayout::Position position) {
86 Shell::GetInstance()->display_controller()-> 86 Shell::GetInstance()->display_controller()->
87 SetDefaultDisplayLayout(DisplayLayout(position, 0)); 87 SetDefaultDisplayLayout(DisplayLayout(position, 0));
88 } 88 }
89 89
90 class DisplayControllerShutdownTest : public test::AshTestBase { 90 class DisplayControllerShutdownTest : public test::AshTestBase {
91 public: 91 public:
92 virtual void TearDown() OVERRIDE { 92 virtual void TearDown() OVERRIDE {
93 test::AshTestBase::TearDown(); 93 test::AshTestBase::TearDown();
94 if (!SupportsMultipleDisplays())
95 return;
96
94 // Make sure that primary display is accessible after shutdown. 97 // Make sure that primary display is accessible after shutdown.
95 gfx::Display primary = Shell::GetScreen()->GetPrimaryDisplay(); 98 gfx::Display primary = Shell::GetScreen()->GetPrimaryDisplay();
96 EXPECT_EQ("0,0 444x333", primary.bounds().ToString()); 99 EXPECT_EQ("0,0 444x333", primary.bounds().ToString());
97 EXPECT_EQ(2, Shell::GetScreen()->GetNumDisplays()); 100 EXPECT_EQ(2, Shell::GetScreen()->GetNumDisplays());
98 } 101 }
99 }; 102 };
100 103
101 class TestEventHandler : public ui::EventHandler { 104 class TestEventHandler : public ui::EventHandler {
102 public: 105 public:
103 TestEventHandler() : target_root_(NULL), 106 TestEventHandler() : target_root_(NULL),
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 182
180 float GetStoredUIScale(int64 id) { 183 float GetStoredUIScale(int64 id) {
181 return Shell::GetInstance()->display_manager()->GetDisplayInfo(id).ui_scale(); 184 return Shell::GetInstance()->display_manager()->GetDisplayInfo(id).ui_scale();
182 } 185 }
183 186
184 } // namespace 187 } // namespace
185 188
186 typedef test::AshTestBase DisplayControllerTest; 189 typedef test::AshTestBase DisplayControllerTest;
187 190
188 TEST_F(DisplayControllerShutdownTest, Shutdown) { 191 TEST_F(DisplayControllerShutdownTest, Shutdown) {
192 if (!SupportsMultipleDisplays())
193 return;
194
189 UpdateDisplay("444x333, 200x200"); 195 UpdateDisplay("444x333, 200x200");
190 } 196 }
191 197
192 TEST_F(DisplayControllerTest, SecondaryDisplayLayout) { 198 TEST_F(DisplayControllerTest, SecondaryDisplayLayout) {
199 if (!SupportsMultipleDisplays())
200 return;
201
193 TestObserver observer; 202 TestObserver observer;
194 UpdateDisplay("500x500,400x400"); 203 UpdateDisplay("500x500,400x400");
195 EXPECT_EQ(1, observer.CountAndReset()); // resize and add 204 EXPECT_EQ(1, observer.CountAndReset()); // resize and add
196 gfx::Display* secondary_display = 205 gfx::Display* secondary_display =
197 Shell::GetInstance()->display_manager()->GetDisplayAt(1); 206 Shell::GetInstance()->display_manager()->GetDisplayAt(1);
198 gfx::Insets insets(5, 5, 5, 5); 207 gfx::Insets insets(5, 5, 5, 5);
199 secondary_display->UpdateWorkAreaFromInsets(insets); 208 secondary_display->UpdateWorkAreaFromInsets(insets);
200 209
201 // Default layout is RIGHT. 210 // Default layout is RIGHT.
202 EXPECT_EQ("0,0 500x500", GetPrimaryDisplay().bounds().ToString()); 211 EXPECT_EQ("0,0 500x500", GetPrimaryDisplay().bounds().ToString());
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 EXPECT_EQ("0,0 500x500", GetPrimaryDisplay().bounds().ToString()); 262 EXPECT_EQ("0,0 500x500", GetPrimaryDisplay().bounds().ToString());
254 EXPECT_EQ("400,500 400x400", GetSecondaryDisplay().bounds().ToString()); 263 EXPECT_EQ("400,500 400x400", GetSecondaryDisplay().bounds().ToString());
255 264
256 SetSecondaryDisplayLayoutAndOffset(DisplayLayout::BOTTOM, -400); 265 SetSecondaryDisplayLayoutAndOffset(DisplayLayout::BOTTOM, -400);
257 EXPECT_EQ(1, observer.CountAndReset()); // resize and add 266 EXPECT_EQ(1, observer.CountAndReset()); // resize and add
258 EXPECT_EQ("0,0 500x500", GetPrimaryDisplay().bounds().ToString()); 267 EXPECT_EQ("0,0 500x500", GetPrimaryDisplay().bounds().ToString());
259 EXPECT_EQ("-300,500 400x400", GetSecondaryDisplay().bounds().ToString()); 268 EXPECT_EQ("-300,500 400x400", GetSecondaryDisplay().bounds().ToString());
260 } 269 }
261 270
262 TEST_F(DisplayControllerTest, BoundsUpdated) { 271 TEST_F(DisplayControllerTest, BoundsUpdated) {
272 if (!SupportsMultipleDisplays())
273 return;
274
263 TestObserver observer; 275 TestObserver observer;
264 SetDefaultDisplayLayout(DisplayLayout::BOTTOM); 276 SetDefaultDisplayLayout(DisplayLayout::BOTTOM);
265 UpdateDisplay("200x200,300x300"); // layout, resize and add. 277 UpdateDisplay("200x200,300x300"); // layout, resize and add.
266 EXPECT_EQ(1, observer.CountAndReset()); 278 EXPECT_EQ(1, observer.CountAndReset());
267 279
268 internal::DisplayManager* display_manager = 280 internal::DisplayManager* display_manager =
269 Shell::GetInstance()->display_manager(); 281 Shell::GetInstance()->display_manager();
270 gfx::Display* secondary_display = display_manager->GetDisplayAt(1); 282 gfx::Display* secondary_display = display_manager->GetDisplayAt(1);
271 gfx::Insets insets(5, 5, 5, 5); 283 gfx::Insets insets(5, 5, 5, 5);
272 secondary_display->UpdateWorkAreaFromInsets(insets); 284 secondary_display->UpdateWorkAreaFromInsets(insets);
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
314 EXPECT_EQ(1, observer.CountAndReset()); 326 EXPECT_EQ(1, observer.CountAndReset());
315 display_manager->SetDisplayUIScale(secondary_id, 1.125f); 327 display_manager->SetDisplayUIScale(secondary_id, 1.125f);
316 EXPECT_EQ(0, observer.CountAndReset()); 328 EXPECT_EQ(0, observer.CountAndReset());
317 display_manager->SetDisplayUIScale(primary_id, 1.125f); 329 display_manager->SetDisplayUIScale(primary_id, 1.125f);
318 EXPECT_EQ(0, observer.CountAndReset()); 330 EXPECT_EQ(0, observer.CountAndReset());
319 display_manager->SetDisplayUIScale(primary_id, 1.125f); 331 display_manager->SetDisplayUIScale(primary_id, 1.125f);
320 EXPECT_EQ(0, observer.CountAndReset()); 332 EXPECT_EQ(0, observer.CountAndReset());
321 } 333 }
322 334
323 TEST_F(DisplayControllerTest, MirroredLayout) { 335 TEST_F(DisplayControllerTest, MirroredLayout) {
336 if (!SupportsMultipleDisplays())
337 return;
338
324 DisplayController* display_controller = 339 DisplayController* display_controller =
325 Shell::GetInstance()->display_controller(); 340 Shell::GetInstance()->display_controller();
326 UpdateDisplay("500x500,400x400"); 341 UpdateDisplay("500x500,400x400");
327 EXPECT_FALSE(display_controller->GetCurrentDisplayLayout().mirrored); 342 EXPECT_FALSE(display_controller->GetCurrentDisplayLayout().mirrored);
328 EXPECT_EQ(2, Shell::GetScreen()->GetNumDisplays()); 343 EXPECT_EQ(2, Shell::GetScreen()->GetNumDisplays());
329 EXPECT_EQ( 344 EXPECT_EQ(
330 2U, Shell::GetInstance()->display_manager()->num_connected_displays()); 345 2U, Shell::GetInstance()->display_manager()->num_connected_displays());
331 346
332 UpdateDisplay("500x500,1+0-500x500"); 347 UpdateDisplay("500x500,1+0-500x500");
333 EXPECT_TRUE(display_controller->GetCurrentDisplayLayout().mirrored); 348 EXPECT_TRUE(display_controller->GetCurrentDisplayLayout().mirrored);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
365 DisplayLayout(DisplayLayout::TOP, -70).Invert().ToString()); 380 DisplayLayout(DisplayLayout::TOP, -70).Invert().ToString());
366 381
367 EXPECT_EQ("top, 0", 382 EXPECT_EQ("top, 0",
368 DisplayLayout(DisplayLayout::BOTTOM, 0).Invert().ToString()); 383 DisplayLayout(DisplayLayout::BOTTOM, 0).Invert().ToString());
369 EXPECT_EQ("top, -70", 384 EXPECT_EQ("top, -70",
370 DisplayLayout(DisplayLayout::BOTTOM, 70).Invert().ToString()); 385 DisplayLayout(DisplayLayout::BOTTOM, 70).Invert().ToString());
371 EXPECT_EQ("top, 80", 386 EXPECT_EQ("top, 80",
372 DisplayLayout(DisplayLayout::BOTTOM, -80).Invert().ToString()); 387 DisplayLayout(DisplayLayout::BOTTOM, -80).Invert().ToString());
373 } 388 }
374 389
375 // Crashes flakily on win8 aura bots: crbug.com/237642 390 TEST_F(DisplayControllerTest, SwapPrimary) {
376 #if defined(OS_WIN) && defined(USE_AURA) 391 if (!SupportsMultipleDisplays())
377 #define MAYBE_SwapPrimary DISABLED_SwapPrimary 392 return;
378 #else 393
379 #define MAYBE_SwapPrimary SwapPrimary
380 #endif
381 TEST_F(DisplayControllerTest, MAYBE_SwapPrimary) {
382 DisplayController* display_controller = 394 DisplayController* display_controller =
383 Shell::GetInstance()->display_controller(); 395 Shell::GetInstance()->display_controller();
384 396
385 UpdateDisplay("200x200,300x300"); 397 UpdateDisplay("200x200,300x300");
386 gfx::Display primary_display = Shell::GetScreen()->GetPrimaryDisplay(); 398 gfx::Display primary_display = Shell::GetScreen()->GetPrimaryDisplay();
387 gfx::Display secondary_display = ScreenAsh::GetSecondaryDisplay(); 399 gfx::Display secondary_display = ScreenAsh::GetSecondaryDisplay();
388 400
389 DisplayLayout display_layout(DisplayLayout::RIGHT, 50); 401 DisplayLayout display_layout(DisplayLayout::RIGHT, 50);
390 display_controller->SetLayoutForCurrentDisplays(display_layout); 402 display_controller->SetLayoutForCurrentDisplays(display_layout);
391 403
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
457 EXPECT_EQ(primary_display.id(), 469 EXPECT_EQ(primary_display.id(),
458 Shell::GetScreen()->GetDisplayNearestPoint( 470 Shell::GetScreen()->GetDisplayNearestPoint(
459 gfx::Point(-100, -100)).id()); 471 gfx::Point(-100, -100)).id());
460 EXPECT_EQ(primary_display.id(), 472 EXPECT_EQ(primary_display.id(),
461 Shell::GetScreen()->GetDisplayNearestWindow(NULL).id()); 473 Shell::GetScreen()->GetDisplayNearestWindow(NULL).id());
462 EXPECT_TRUE(tracker.Contains(primary_root)); 474 EXPECT_TRUE(tracker.Contains(primary_root));
463 EXPECT_FALSE(tracker.Contains(secondary_root)); 475 EXPECT_FALSE(tracker.Contains(secondary_root));
464 EXPECT_TRUE(primary_root->Contains(launcher_window)); 476 EXPECT_TRUE(primary_root->Contains(launcher_window));
465 } 477 }
466 478
467 // Crashes flakily on win8 aura bots: crbug.com/237642 479 TEST_F(DisplayControllerTest, SwapPrimaryById) {
468 #if defined(OS_WIN) && defined(USE_AURA) 480 if (!SupportsMultipleDisplays())
469 #define MAYBE_SwapPrimaryById DISABLED_SwapPrimaryById 481 return;
470 #else 482
471 #define MAYBE_SwapPrimaryById SwapPrimaryById
472 #endif
473 TEST_F(DisplayControllerTest, MAYBE_SwapPrimaryById) {
474 DisplayController* display_controller = 483 DisplayController* display_controller =
475 Shell::GetInstance()->display_controller(); 484 Shell::GetInstance()->display_controller();
476 485
477 UpdateDisplay("200x200,300x300"); 486 UpdateDisplay("200x200,300x300");
478 gfx::Display primary_display = Shell::GetScreen()->GetPrimaryDisplay(); 487 gfx::Display primary_display = Shell::GetScreen()->GetPrimaryDisplay();
479 gfx::Display secondary_display = ScreenAsh::GetSecondaryDisplay(); 488 gfx::Display secondary_display = ScreenAsh::GetSecondaryDisplay();
480 489
481 DisplayLayout display_layout(DisplayLayout::RIGHT, 50); 490 DisplayLayout display_layout(DisplayLayout::RIGHT, 50);
482 display_controller->SetLayoutForCurrentDisplays(display_layout); 491 display_controller->SetLayoutForCurrentDisplays(display_layout);
483 492
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
584 EXPECT_EQ(third_display_info.id(), ScreenAsh::GetSecondaryDisplay().id()); 593 EXPECT_EQ(third_display_info.id(), ScreenAsh::GetSecondaryDisplay().id());
585 EXPECT_EQ( 594 EXPECT_EQ(
586 primary_root, 595 primary_root,
587 display_controller->GetRootWindowForDisplayId(primary_display.id())); 596 display_controller->GetRootWindowForDisplayId(primary_display.id()));
588 EXPECT_NE( 597 EXPECT_NE(
589 primary_root, 598 primary_root,
590 display_controller->GetRootWindowForDisplayId(third_display_info.id())); 599 display_controller->GetRootWindowForDisplayId(third_display_info.id()));
591 EXPECT_TRUE(primary_root->Contains(launcher_window)); 600 EXPECT_TRUE(primary_root->Contains(launcher_window));
592 } 601 }
593 602
594 #if defined(OS_WIN) 603 TEST_F(DisplayControllerTest, CursorDeviceScaleFactorSwapPrimary) {
595 // Flaky failures on Win8 due to window activation messages. crbug.com/239539 604 if (!SupportsMultipleDisplays())
596 #define MAYBE_CursorDeviceScaleFactorSwapPrimary \ 605 return;
597 DISABLED_CursorDeviceScaleFactorSwapPrimary 606
598 #else
599 #define MAYBE_CursorDeviceScaleFactorSwapPrimary \
600 CursorDeviceScaleFactorSwapPrimary
601 #endif
602 TEST_F(DisplayControllerTest, MAYBE_CursorDeviceScaleFactorSwapPrimary) {
603 DisplayController* display_controller = 607 DisplayController* display_controller =
604 Shell::GetInstance()->display_controller(); 608 Shell::GetInstance()->display_controller();
605 609
606 UpdateDisplay("200x200,200x200*2"); 610 UpdateDisplay("200x200,200x200*2");
607 gfx::Display primary_display = Shell::GetScreen()->GetPrimaryDisplay(); 611 gfx::Display primary_display = Shell::GetScreen()->GetPrimaryDisplay();
608 gfx::Display secondary_display = ScreenAsh::GetSecondaryDisplay(); 612 gfx::Display secondary_display = ScreenAsh::GetSecondaryDisplay();
609 613
610 aura::RootWindow* primary_root = 614 aura::RootWindow* primary_root =
611 display_controller->GetRootWindowForDisplayId(primary_display.id()); 615 display_controller->GetRootWindowForDisplayId(primary_display.id());
612 aura::RootWindow* secondary_root = 616 aura::RootWindow* secondary_root =
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
645 // Cursor's device scale factor should be updated even without moving cursor. 649 // Cursor's device scale factor should be updated even without moving cursor.
646 EXPECT_EQ(1.0f, test_api.GetDisplay().device_scale_factor()); 650 EXPECT_EQ(1.0f, test_api.GetDisplay().device_scale_factor());
647 651
648 primary_root->MoveCursorTo(gfx::Point(50, 50)); 652 primary_root->MoveCursorTo(gfx::Point(50, 50));
649 EXPECT_EQ(1.0f, 653 EXPECT_EQ(1.0f,
650 primary_root->AsRootWindowHostDelegate()->GetDeviceScaleFactor()); 654 primary_root->AsRootWindowHostDelegate()->GetDeviceScaleFactor());
651 EXPECT_EQ(1.0f, test_api.GetDisplay().device_scale_factor()); 655 EXPECT_EQ(1.0f, test_api.GetDisplay().device_scale_factor());
652 } 656 }
653 657
654 #if defined(OS_WIN) 658 #if defined(OS_WIN)
655 // TODO(oshima): On Windows, we don't update the origin/size right away. 659 // TODO(scottmg): RootWindow doesn't get resized on Windows
660 // Ash. http://crbug.com/247916.
656 #define MAYBE_UpdateDisplayWithHostOrigin DISABLED_UpdateDisplayWithHostOrigin 661 #define MAYBE_UpdateDisplayWithHostOrigin DISABLED_UpdateDisplayWithHostOrigin
657 #else 662 #else
658 #define MAYBE_UpdateDisplayWithHostOrigin UpdateDisplayWithHostOrigin 663 #define MAYBE_UpdateDisplayWithHostOrigin UpdateDisplayWithHostOrigin
659 #endif 664 #endif
660 665
661 TEST_F(DisplayControllerTest, MAYBE_UpdateDisplayWithHostOrigin) { 666 TEST_F(DisplayControllerTest, MAYBE_UpdateDisplayWithHostOrigin) {
662 UpdateDisplay("100x200,300x400"); 667 UpdateDisplay("100x200,300x400");
663 ASSERT_EQ(2, Shell::GetScreen()->GetNumDisplays()); 668 ASSERT_EQ(2, Shell::GetScreen()->GetNumDisplays());
664 Shell::RootWindowList root_windows = 669 Shell::RootWindowList root_windows =
665 Shell::GetInstance()->GetAllRootWindows(); 670 Shell::GetInstance()->GetAllRootWindows();
(...skipping 19 matching lines...) Expand all
685 EXPECT_EQ("300x400", root_windows[1]->GetHostSize().ToString()); 690 EXPECT_EQ("300x400", root_windows[1]->GetHostSize().ToString());
686 691
687 UpdateDisplay("100+200-100x200,300+500-200x300"); 692 UpdateDisplay("100+200-100x200,300+500-200x300");
688 ASSERT_EQ(2, Shell::GetScreen()->GetNumDisplays()); 693 ASSERT_EQ(2, Shell::GetScreen()->GetNumDisplays());
689 EXPECT_EQ("100,200", root_windows[0]->GetHostOrigin().ToString()); 694 EXPECT_EQ("100,200", root_windows[0]->GetHostOrigin().ToString());
690 EXPECT_EQ("100x200", root_windows[0]->GetHostSize().ToString()); 695 EXPECT_EQ("100x200", root_windows[0]->GetHostSize().ToString());
691 EXPECT_EQ("300,500", root_windows[1]->GetHostOrigin().ToString()); 696 EXPECT_EQ("300,500", root_windows[1]->GetHostOrigin().ToString());
692 EXPECT_EQ("200x300", root_windows[1]->GetHostSize().ToString()); 697 EXPECT_EQ("200x300", root_windows[1]->GetHostSize().ToString());
693 } 698 }
694 699
695 #if defined(OS_WIN) 700 TEST_F(DisplayControllerTest, OverscanInsets) {
696 // TODO(oshima): Windows does not supoprts insets. 701 if (!SupportsMultipleDisplays())
697 #define MAYBE_OverscanInsets DISABLED_OverscanInsets 702 return;
698 #else
699 #define MAYBE_OverscanInsets OverscanInsets
700 #endif
701 703
702 TEST_F(DisplayControllerTest, MAYBE_OverscanInsets) {
703 DisplayController* display_controller = 704 DisplayController* display_controller =
704 Shell::GetInstance()->display_controller(); 705 Shell::GetInstance()->display_controller();
705 TestEventHandler event_handler; 706 TestEventHandler event_handler;
706 Shell::GetInstance()->AddPreTargetHandler(&event_handler); 707 Shell::GetInstance()->AddPreTargetHandler(&event_handler);
707 708
708 UpdateDisplay("120x200,300x400*2"); 709 UpdateDisplay("120x200,300x400*2");
709 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay(); 710 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay();
710 Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); 711 Shell::RootWindowList root_windows = Shell::GetAllRootWindows();
711 712
712 display_controller->SetOverscanInsets(display1.id(), 713 display_controller->SetOverscanInsets(display1.id(),
(...skipping 11 matching lines...) Expand all
724 EXPECT_EQ("0,0 120x200", root_windows[0]->bounds().ToString()); 725 EXPECT_EQ("0,0 120x200", root_windows[0]->bounds().ToString());
725 EXPECT_EQ("120,0 150x200", 726 EXPECT_EQ("120,0 150x200",
726 ScreenAsh::GetSecondaryDisplay().bounds().ToString()); 727 ScreenAsh::GetSecondaryDisplay().bounds().ToString());
727 728
728 generator.MoveMouseToInHost(30, 20); 729 generator.MoveMouseToInHost(30, 20);
729 EXPECT_EQ("30,20", event_handler.GetLocationAndReset()); 730 EXPECT_EQ("30,20", event_handler.GetLocationAndReset());
730 731
731 Shell::GetInstance()->RemovePreTargetHandler(&event_handler); 732 Shell::GetInstance()->RemovePreTargetHandler(&event_handler);
732 } 733 }
733 734
734 #if defined(OS_WIN) 735 TEST_F(DisplayControllerTest, Rotate) {
735 // On Win8 bots, the host window can't be resized and 736 if (!SupportsMultipleDisplays())
736 // SetTransform updates the window using the orignal host window 737 return;
737 // size.
738 #define MAYBE_Rotate DISABLED_Rotate
739 #define MAYBE_ScaleRootWindow DISABLED_ScaleRootWindow
740 #define MAYBE_TouchScale DISABLED_TouchScale
741 #define MAYBE_ConvertHostToRootCoords DISABLED_ConvertHostToRootCoords
742 #else
743 #define MAYBE_Rotate Rotate
744 #define MAYBE_ScaleRootWindow ScaleRootWindow
745 #define MAYBE_TouchScale TouchScale
746 #define MAYBE_ConvertHostToRootCoords ConvertHostToRootCoords
747 #endif
748 738
749 TEST_F(DisplayControllerTest, MAYBE_Rotate) {
750 DisplayController* display_controller = 739 DisplayController* display_controller =
751 Shell::GetInstance()->display_controller(); 740 Shell::GetInstance()->display_controller();
752 internal::DisplayManager* display_manager = 741 internal::DisplayManager* display_manager =
753 Shell::GetInstance()->display_manager(); 742 Shell::GetInstance()->display_manager();
754 TestEventHandler event_handler; 743 TestEventHandler event_handler;
755 Shell::GetInstance()->AddPreTargetHandler(&event_handler); 744 Shell::GetInstance()->AddPreTargetHandler(&event_handler);
756 745
757 UpdateDisplay("120x200,300x400*2"); 746 UpdateDisplay("120x200,300x400*2");
758 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay(); 747 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay();
759 int64 display2_id = ScreenAsh::GetSecondaryDisplay().id(); 748 int64 display2_id = ScreenAsh::GetSecondaryDisplay().id();
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 ScreenAsh::GetSecondaryDisplay().bounds().ToString()); 796 ScreenAsh::GetSecondaryDisplay().bounds().ToString());
808 EXPECT_EQ(gfx::Display::ROTATE_180, GetStoredRotation(display1.id())); 797 EXPECT_EQ(gfx::Display::ROTATE_180, GetStoredRotation(display1.id()));
809 EXPECT_EQ(gfx::Display::ROTATE_270, GetStoredRotation(display2_id)); 798 EXPECT_EQ(gfx::Display::ROTATE_270, GetStoredRotation(display2_id));
810 799
811 generator1.MoveMouseToInHost(50, 40); 800 generator1.MoveMouseToInHost(50, 40);
812 EXPECT_EQ("69,159", event_handler.GetLocationAndReset()); 801 EXPECT_EQ("69,159", event_handler.GetLocationAndReset());
813 802
814 Shell::GetInstance()->RemovePreTargetHandler(&event_handler); 803 Shell::GetInstance()->RemovePreTargetHandler(&event_handler);
815 } 804 }
816 805
817 TEST_F(DisplayControllerTest, MAYBE_ScaleRootWindow) { 806 TEST_F(DisplayControllerTest, ScaleRootWindow) {
807 if (!SupportsMultipleDisplays())
808 return;
809
818 TestEventHandler event_handler; 810 TestEventHandler event_handler;
819 Shell::GetInstance()->AddPreTargetHandler(&event_handler); 811 Shell::GetInstance()->AddPreTargetHandler(&event_handler);
820 812
821 UpdateDisplay("600x400*2@1.5,500x300"); 813 UpdateDisplay("600x400*2@1.5,500x300");
822 814
823 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay(); 815 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay();
824 gfx::Display::SetInternalDisplayId(display1.id()); 816 gfx::Display::SetInternalDisplayId(display1.id());
825 817
826 gfx::Display display2 = ScreenAsh::GetSecondaryDisplay(); 818 gfx::Display display2 = ScreenAsh::GetSecondaryDisplay();
827 Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); 819 Shell::RootWindowList root_windows = Shell::GetAllRootWindows();
(...skipping 14 matching lines...) Expand all
842 display2 = ScreenAsh::GetSecondaryDisplay(); 834 display2 = ScreenAsh::GetSecondaryDisplay();
843 EXPECT_EQ("0,0 375x250", display1.bounds().ToString()); 835 EXPECT_EQ("0,0 375x250", display1.bounds().ToString());
844 EXPECT_EQ("0,0 375x250", root_windows[0]->bounds().ToString()); 836 EXPECT_EQ("0,0 375x250", root_windows[0]->bounds().ToString());
845 EXPECT_EQ("375,0 500x300", display2.bounds().ToString()); 837 EXPECT_EQ("375,0 500x300", display2.bounds().ToString());
846 EXPECT_EQ(1.25f, GetStoredUIScale(display1.id())); 838 EXPECT_EQ(1.25f, GetStoredUIScale(display1.id()));
847 EXPECT_EQ(1.0f, GetStoredUIScale(display2.id())); 839 EXPECT_EQ(1.0f, GetStoredUIScale(display2.id()));
848 840
849 Shell::GetInstance()->RemovePreTargetHandler(&event_handler); 841 Shell::GetInstance()->RemovePreTargetHandler(&event_handler);
850 } 842 }
851 843
852 TEST_F(DisplayControllerTest, MAYBE_TouchScale) { 844 TEST_F(DisplayControllerTest, TouchScale) {
845 if (!SupportsMultipleDisplays())
846 return;
847
853 TestEventHandler event_handler; 848 TestEventHandler event_handler;
854 Shell::GetInstance()->AddPreTargetHandler(&event_handler); 849 Shell::GetInstance()->AddPreTargetHandler(&event_handler);
855 850
856 UpdateDisplay("200x200*2"); 851 UpdateDisplay("200x200*2");
857 gfx::Display display = Shell::GetScreen()->GetPrimaryDisplay(); 852 gfx::Display display = Shell::GetScreen()->GetPrimaryDisplay();
858 Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); 853 Shell::RootWindowList root_windows = Shell::GetAllRootWindows();
859 aura::RootWindow* root_window = root_windows[0]; 854 aura::RootWindow* root_window = root_windows[0];
860 aura::test::EventGenerator generator(root_window); 855 aura::test::EventGenerator generator(root_window);
861 856
862 generator.PressMoveAndReleaseTouchTo(50, 50); 857 generator.PressMoveAndReleaseTouchTo(50, 50);
863 // Default test touches have radius_x/y = 1.0, with device scale 858 // Default test touches have radius_x/y = 1.0, with device scale
864 // factor = 2, the scaled radius_x/y should be 0.5. 859 // factor = 2, the scaled radius_x/y should be 0.5.
865 EXPECT_EQ(0.5, event_handler.touch_radius_x()); 860 EXPECT_EQ(0.5, event_handler.touch_radius_x());
866 EXPECT_EQ(0.5, event_handler.touch_radius_y()); 861 EXPECT_EQ(0.5, event_handler.touch_radius_y());
867 862
868 generator.ScrollSequence(gfx::Point(0,0), 863 generator.ScrollSequence(gfx::Point(0,0),
869 base::TimeDelta::FromMilliseconds(100), 864 base::TimeDelta::FromMilliseconds(100),
870 10.0, 1.0, 5, 1); 865 10.0, 1.0, 5, 1);
871 866
872 // With device scale factor = 2, ordinal_offset * 2 = offset. 867 // With device scale factor = 2, ordinal_offset * 2 = offset.
873 EXPECT_EQ(event_handler.scroll_x_offset(), 868 EXPECT_EQ(event_handler.scroll_x_offset(),
874 event_handler.scroll_x_offset_ordinal() * 2); 869 event_handler.scroll_x_offset_ordinal() * 2);
875 EXPECT_EQ(event_handler.scroll_y_offset(), 870 EXPECT_EQ(event_handler.scroll_y_offset(),
876 event_handler.scroll_y_offset_ordinal() * 2); 871 event_handler.scroll_y_offset_ordinal() * 2);
877 872
878 Shell::GetInstance()->RemovePreTargetHandler(&event_handler); 873 Shell::GetInstance()->RemovePreTargetHandler(&event_handler);
879 } 874 }
880 875
881 TEST_F(DisplayControllerTest, MAYBE_ConvertHostToRootCoords) { 876 TEST_F(DisplayControllerTest, ConvertHostToRootCoords) {
877 if (!SupportsMultipleDisplays())
878 return;
879
882 TestEventHandler event_handler; 880 TestEventHandler event_handler;
883 Shell::GetInstance()->AddPreTargetHandler(&event_handler); 881 Shell::GetInstance()->AddPreTargetHandler(&event_handler);
884 882
885 UpdateDisplay("600x400*2/r@1.5"); 883 UpdateDisplay("600x400*2/r@1.5");
886 884
887 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay(); 885 gfx::Display display1 = Shell::GetScreen()->GetPrimaryDisplay();
888 Shell::RootWindowList root_windows = Shell::GetAllRootWindows(); 886 Shell::RootWindowList root_windows = Shell::GetAllRootWindows();
889 EXPECT_EQ("0,0 300x450", display1.bounds().ToString()); 887 EXPECT_EQ("0,0 300x450", display1.bounds().ToString());
890 EXPECT_EQ("0,0 300x450", root_windows[0]->bounds().ToString()); 888 EXPECT_EQ("0,0 300x450", root_windows[0]->bounds().ToString());
891 EXPECT_EQ(1.5f, GetStoredUIScale(display1.id())); 889 EXPECT_EQ(1.5f, GetStoredUIScale(display1.id()));
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
930 generator.MoveMouseToInHost(599, 399); 928 generator.MoveMouseToInHost(599, 399);
931 EXPECT_EQ("0,449", event_handler.GetLocationAndReset()); 929 EXPECT_EQ("0,449", event_handler.GetLocationAndReset());
932 generator.MoveMouseToInHost(0, 399); 930 generator.MoveMouseToInHost(0, 399);
933 EXPECT_EQ("0,0", event_handler.GetLocationAndReset()); 931 EXPECT_EQ("0,0", event_handler.GetLocationAndReset());
934 932
935 Shell::GetInstance()->RemovePreTargetHandler(&event_handler); 933 Shell::GetInstance()->RemovePreTargetHandler(&event_handler);
936 } 934 }
937 935
938 } // namespace test 936 } // namespace test
939 } // namespace ash 937 } // namespace ash
OLDNEW
« no previous file with comments | « no previous file | ash/display/display_error_dialog_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698