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

Side by Side Diff: chrome/browser/apps/app_window_interactive_uitest.cc

Issue 1644773003: Remove BrowserIterator (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@host-desktop-1
Patch Set: . Created 4 years, 10 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
« no previous file with comments | « chrome/browser/app_controller_mac.mm ('k') | chrome/browser/chromeos/boot_times_recorder.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "base/macros.h" 5 #include "base/macros.h"
6 #include "build/build_config.h" 6 #include "build/build_config.h"
7 #include "chrome/browser/apps/app_browsertest_util.h" 7 #include "chrome/browser/apps/app_browsertest_util.h"
8 #include "chrome/browser/lifetime/application_lifetime.h" 8 #include "chrome/browser/lifetime/application_lifetime.h"
9 #include "chrome/browser/ui/browser_iterator.h" 9 #include "chrome/browser/ui/browser_list.h"
10 #include "chrome/browser/ui/browser_window.h" 10 #include "chrome/browser/ui/browser_window.h"
11 #include "chrome/test/base/interactive_test_utils.h" 11 #include "chrome/test/base/interactive_test_utils.h"
12 #include "extensions/browser/app_window/native_app_window.h" 12 #include "extensions/browser/app_window/native_app_window.h"
13 #include "extensions/test/extension_test_message_listener.h" 13 #include "extensions/test/extension_test_message_listener.h"
14 #include "extensions/test/result_catcher.h" 14 #include "extensions/test/result_catcher.h"
15 15
16 #if defined(OS_MACOSX) 16 #if defined(OS_MACOSX)
17 #include "base/mac/mac_util.h" 17 #include "base/mac/mac_util.h"
18 #include "ui/base/test/scoped_fake_nswindow_fullscreen.h" 18 #include "ui/base/test/scoped_fake_nswindow_fullscreen.h"
19 #endif 19 #endif
(...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after
518 protected: 518 protected:
519 AppWindowHiddenKeepAliveTest() {} 519 AppWindowHiddenKeepAliveTest() {}
520 520
521 private: 521 private:
522 DISALLOW_COPY_AND_ASSIGN(AppWindowHiddenKeepAliveTest); 522 DISALLOW_COPY_AND_ASSIGN(AppWindowHiddenKeepAliveTest);
523 }; 523 };
524 524
525 // A window that becomes hidden should not keep Chrome alive. 525 // A window that becomes hidden should not keep Chrome alive.
526 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, ShownThenHidden) { 526 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, ShownThenHidden) {
527 LoadAndLaunchPlatformApp("minimal", "Launched"); 527 LoadAndLaunchPlatformApp("minimal", "Launched");
528 for (chrome::BrowserIterator it; !it.done(); it.Next()) 528 for (auto* browser : *BrowserList::GetInstance())
529 it->window()->Close(); 529 browser->window()->Close();
530 530
531 EXPECT_TRUE(chrome::WillKeepAlive()); 531 EXPECT_TRUE(chrome::WillKeepAlive());
532 GetFirstAppWindow()->Hide(); 532 GetFirstAppWindow()->Hide();
533 EXPECT_FALSE(chrome::WillKeepAlive()); 533 EXPECT_FALSE(chrome::WillKeepAlive());
534 } 534 }
535 535
536 // A window that is hidden but re-shown should still keep Chrome alive. 536 // A window that is hidden but re-shown should still keep Chrome alive.
537 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, ShownThenHiddenThenShown) { 537 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, ShownThenHiddenThenShown) {
538 LoadAndLaunchPlatformApp("minimal", "Launched"); 538 LoadAndLaunchPlatformApp("minimal", "Launched");
539 AppWindow* app_window = GetFirstAppWindow(); 539 AppWindow* app_window = GetFirstAppWindow();
540 app_window->Hide(); 540 app_window->Hide();
541 app_window->Show(AppWindow::SHOW_ACTIVE); 541 app_window->Show(AppWindow::SHOW_ACTIVE);
542 542
543 EXPECT_TRUE(chrome::WillKeepAlive()); 543 EXPECT_TRUE(chrome::WillKeepAlive());
544 for (chrome::BrowserIterator it; !it.done(); it.Next()) 544 for (auto* browser : *BrowserList::GetInstance())
545 it->window()->Close(); 545 browser->window()->Close();
546 EXPECT_TRUE(chrome::WillKeepAlive()); 546 EXPECT_TRUE(chrome::WillKeepAlive());
547 app_window->GetBaseWindow()->Close(); 547 app_window->GetBaseWindow()->Close();
548 } 548 }
549 549
550 // A window that is created hidden and stays hidden should not keep Chrome 550 // A window that is created hidden and stays hidden should not keep Chrome
551 // alive. 551 // alive.
552 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, StaysHidden) { 552 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, StaysHidden) {
553 LoadAndLaunchPlatformApp("hidden", "Launched"); 553 LoadAndLaunchPlatformApp("hidden", "Launched");
554 AppWindow* app_window = GetFirstAppWindow(); 554 AppWindow* app_window = GetFirstAppWindow();
555 EXPECT_TRUE(app_window->is_hidden()); 555 EXPECT_TRUE(app_window->is_hidden());
556 556
557 for (chrome::BrowserIterator it; !it.done(); it.Next()) 557 for (auto* browser : *BrowserList::GetInstance())
558 it->window()->Close(); 558 browser->window()->Close();
559 // This will time out if the command above does not terminate Chrome. 559 // This will time out if the command above does not terminate Chrome.
560 content::RunMessageLoop(); 560 content::RunMessageLoop();
561 } 561 }
562 562
563 // A window that is created hidden but shown soon after should keep Chrome 563 // A window that is created hidden but shown soon after should keep Chrome
564 // alive. 564 // alive.
565 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, HiddenThenShown) { 565 IN_PROC_BROWSER_TEST_F(AppWindowHiddenKeepAliveTest, HiddenThenShown) {
566 ExtensionTestMessageListener launched_listener("Launched", true); 566 ExtensionTestMessageListener launched_listener("Launched", true);
567 LoadAndLaunchPlatformApp("hidden_then_shown", &launched_listener); 567 LoadAndLaunchPlatformApp("hidden_then_shown", &launched_listener);
568 AppWindow* app_window = GetFirstAppWindow(); 568 AppWindow* app_window = GetFirstAppWindow();
569 EXPECT_TRUE(app_window->is_hidden()); 569 EXPECT_TRUE(app_window->is_hidden());
570 570
571 // Close all browser windows. 571 // Close all browser windows.
572 for (chrome::BrowserIterator it; !it.done(); it.Next()) 572 for (auto* browser : *BrowserList::GetInstance())
573 it->window()->Close(); 573 browser->window()->Close();
574 574
575 // The app window will show after 3 seconds. 575 // The app window will show after 3 seconds.
576 ExtensionTestMessageListener shown_listener("Shown", false); 576 ExtensionTestMessageListener shown_listener("Shown", false);
577 launched_listener.Reply(""); 577 launched_listener.Reply("");
578 EXPECT_TRUE(shown_listener.WaitUntilSatisfied()); 578 EXPECT_TRUE(shown_listener.WaitUntilSatisfied());
579 EXPECT_FALSE(app_window->is_hidden()); 579 EXPECT_FALSE(app_window->is_hidden());
580 EXPECT_TRUE(chrome::WillKeepAlive()); 580 EXPECT_TRUE(chrome::WillKeepAlive());
581 app_window->GetBaseWindow()->Close(); 581 app_window->GetBaseWindow()->Close();
582 } 582 }
583 583
584 #endif 584 #endif
OLDNEW
« no previous file with comments | « chrome/browser/app_controller_mac.mm ('k') | chrome/browser/chromeos/boot_times_recorder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698