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

Side by Side Diff: ios/chrome/test/app/chrome_test_util.mm

Issue 2615003002: Use ChromeBrowserStateManager instead of BrowserListIOS. (Closed)
Patch Set: Fix ios_chrome_perftests. Created 3 years, 11 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 | « ios/chrome/test/app/BUILD.gn ('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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #import "ios/chrome/test/app/chrome_test_util.h" 5 #import "ios/chrome/test/app/chrome_test_util.h"
6 6
7 #include "base/mac/foundation_util.h" 7 #include "base/mac/foundation_util.h"
8 #import "breakpad/src/client/ios/BreakpadController.h" 8 #import "breakpad/src/client/ios/BreakpadController.h"
9 #include "components/metrics/metrics_pref_names.h" 9 #include "components/metrics/metrics_pref_names.h"
10 #include "components/metrics/metrics_service.h" 10 #include "components/metrics/metrics_service.h"
11 #import "ios/chrome/app/application_delegate/metrics_mediator.h" 11 #import "ios/chrome/app/application_delegate/metrics_mediator.h"
12 #import "ios/chrome/app/application_delegate/metrics_mediator_testing.h" 12 #import "ios/chrome/app/application_delegate/metrics_mediator_testing.h"
13 #import "ios/chrome/app/chrome_overlay_window.h" 13 #import "ios/chrome/app/chrome_overlay_window.h"
14 #import "ios/chrome/app/main_application_delegate_testing.h" 14 #import "ios/chrome/app/main_application_delegate_testing.h"
15 #import "ios/chrome/app/main_controller.h" 15 #import "ios/chrome/app/main_controller.h"
16 #import "ios/chrome/app/main_controller_private.h" 16 #import "ios/chrome/app/main_controller_private.h"
17 #include "ios/chrome/browser/application_context.h" 17 #include "ios/chrome/browser/application_context.h"
18 #include "ios/chrome/browser/browser_state/chrome_browser_state.h" 18 #include "ios/chrome/browser/browser_state/chrome_browser_state.h"
19 #include "ios/chrome/browser/browser_state/chrome_browser_state_manager.h"
19 #import "ios/chrome/browser/metrics/previous_session_info.h" 20 #import "ios/chrome/browser/metrics/previous_session_info.h"
20 #import "ios/chrome/browser/metrics/previous_session_info_private.h" 21 #import "ios/chrome/browser/metrics/previous_session_info_private.h"
21 #import "ios/chrome/browser/tabs/tab.h" 22 #import "ios/chrome/browser/tabs/tab.h"
22 #import "ios/chrome/browser/ui/browser_list_ios.h"
23 #import "ios/chrome/browser/ui/browser_view_controller.h" 23 #import "ios/chrome/browser/ui/browser_view_controller.h"
24 #import "ios/chrome/browser/ui/commands/UIKit+ChromeExecuteCommand.h" 24 #import "ios/chrome/browser/ui/commands/UIKit+ChromeExecuteCommand.h"
25 #import "ios/chrome/browser/ui/commands/generic_chrome_command.h" 25 #import "ios/chrome/browser/ui/commands/generic_chrome_command.h"
26 #import "ios/chrome/browser/ui/main/main_view_controller.h" 26 #import "ios/chrome/browser/ui/main/main_view_controller.h"
27 #import "ios/chrome/browser/ui/ntp/new_tab_page_controller.h" 27 #import "ios/chrome/browser/ui/ntp/new_tab_page_controller.h"
28 #import "ios/web/public/test/native_controller_test_util.h" 28 #import "ios/web/public/test/native_controller_test_util.h"
29 29
30 // Methods to access private members for testing. 30 // Methods to access private members for testing.
31 @interface BreakpadController (Testing) 31 @interface BreakpadController (Testing)
32 - (BOOL)isEnabled; 32 - (BOOL)isEnabled;
(...skipping 25 matching lines...) Expand all
58 58
59 // Returns the current tab. 59 // Returns the current tab.
60 Tab* GetCurrentTab() { 60 Tab* GetCurrentTab() {
61 TabModel* tab_model = GetCurrentTabModel(); 61 TabModel* tab_model = GetCurrentTabModel();
62 return [tab_model currentTab]; 62 return [tab_model currentTab];
63 } 63 }
64 64
65 // Returns the original ChromeBrowserState if |incognito| is false. If 65 // Returns the original ChromeBrowserState if |incognito| is false. If
66 // |ingonito| is true, returns an off-the-record ChromeBrowserState. 66 // |ingonito| is true, returns an off-the-record ChromeBrowserState.
67 ios::ChromeBrowserState* GetBrowserState(bool incognito) { 67 ios::ChromeBrowserState* GetBrowserState(bool incognito) {
68 DCHECK(!BrowserListIOS::empty()); 68 std::vector<ios::ChromeBrowserState*> browser_states =
69 id<BrowserIOS> browser = *BrowserListIOS::begin(); 69 GetApplicationContext()
70 DCHECK(browser); 70 ->GetChromeBrowserStateManager()
71 ios::ChromeBrowserState* browser_state = [browser browserState]; 71 ->GetLoadedBrowserStates();
72 DCHECK(browser_state); 72 DCHECK(!browser_states.empty());
73 browser_state = incognito ? browser_state->GetOffTheRecordChromeBrowserState() 73
74 : browser_state->GetOriginalChromeBrowserState(); 74 ios::ChromeBrowserState* browser_state = browser_states.front();
75 return browser_state; 75 DCHECK(!browser_state->IsOffTheRecord());
76
77 return incognito ? browser_state->GetOffTheRecordChromeBrowserState()
78 : browser_state;
76 } 79 }
77 80
78 // Gets the root UIViewController. 81 // Gets the root UIViewController.
79 UIViewController* GetActiveViewController() { 82 UIViewController* GetActiveViewController() {
80 UIWindow* main_window = [[UIApplication sharedApplication] keyWindow]; 83 UIWindow* main_window = [[UIApplication sharedApplication] keyWindow];
81 DCHECK([main_window isKindOfClass:[ChromeOverlayWindow class]]); 84 DCHECK([main_window isKindOfClass:[ChromeOverlayWindow class]]);
82 MainViewController* main_view_controller = 85 MainViewController* main_view_controller =
83 base::mac::ObjCCast<MainViewController>([main_window rootViewController]); 86 base::mac::ObjCCast<MainViewController>([main_window rootViewController]);
84 return main_view_controller.activeViewController; 87 return main_view_controller.activeViewController;
85 } 88 }
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 void OpenChromeFromExternalApp(const GURL& url) { 204 void OpenChromeFromExternalApp(const GURL& url) {
202 [[[UIApplication sharedApplication] delegate] 205 [[[UIApplication sharedApplication] delegate]
203 applicationWillResignActive:[UIApplication sharedApplication]]; 206 applicationWillResignActive:[UIApplication sharedApplication]];
204 [GetMainController() setStartupParametersWithURL:url]; 207 [GetMainController() setStartupParametersWithURL:url];
205 208
206 [[[UIApplication sharedApplication] delegate] 209 [[[UIApplication sharedApplication] delegate]
207 applicationDidBecomeActive:[UIApplication sharedApplication]]; 210 applicationDidBecomeActive:[UIApplication sharedApplication]];
208 } 211 }
209 212
210 } // namespace chrome_test_util 213 } // namespace chrome_test_util
OLDNEW
« no previous file with comments | « ios/chrome/test/app/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698