1 // Copyright 2020 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef IOS_CHROME_BROWSER_UI_MAIN_SCENE_CONTROLLER_TESTING_H_
6 #define IOS_CHROME_BROWSER_UI_MAIN_SCENE_CONTROLLER_TESTING_H_
7 
8 #import "ios/chrome/browser/procedural_block_types.h"
9 
10 class Browser;
11 struct UrlLoadParams;
12 
13 // Methods exposed for testing. This is terrible and should be rewritten.
14 @interface SceneController ()
15 
16 - (void)showFirstRunUI;
17 - (BOOL)isTabSwitcherActive;
18 
19 - (void)addANewTabAndPresentBrowser:(Browser*)browser
20                   withURLLoadParams:(const UrlLoadParams&)urlLoadParams;
21 
22 // Dismisses all modal dialogs, excluding the omnibox if |dismissOmnibox| is
23 // NO, then call |completion|.
24 - (void)dismissModalDialogsWithCompletion:(ProceduralBlock)completion
25                            dismissOmnibox:(BOOL)dismissOmnibox;
26 
27 @end
28 
29 #endif  // IOS_CHROME_BROWSER_UI_MAIN_SCENE_CONTROLLER_TESTING_H_
30