Commit 64126b4c authored by David Jean's avatar David Jean Committed by Chromium LUCI CQ

[ios] Fix chrome unittests for ios12 deprecation

Bug: 1131852
Change-Id: I3fce51d376a2925c1fc891bdaaff17b0c3dbf50f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2627308Reviewed-by: default avatarEugene But <eugenebut@chromium.org>
Commit-Queue: David Jean <djean@chromium.org>
Cr-Commit-Position: refs/heads/master@{#843518}
parent 46d734a1
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
#import <MaterialComponents/MaterialOverlayWindow.h> #import <MaterialComponents/MaterialOverlayWindow.h>
#import "ios/chrome/browser/ui/authentication/cells/signin_promo_view_constants.h" #import "ios/chrome/browser/ui/authentication/cells/signin_promo_view_constants.h"
#import "ios/chrome/browser/ui/util/uikit_ui_util.h"
#include "testing/platform_test.h" #include "testing/platform_test.h"
#include "third_party/ocmock/gtest_support.h" #include "third_party/ocmock/gtest_support.h"
...@@ -17,7 +18,7 @@ ...@@ -17,7 +18,7 @@
using SigninPromoViewTest = PlatformTest; using SigninPromoViewTest = PlatformTest;
TEST_F(SigninPromoViewTest, ChromiumLogoImage) { TEST_F(SigninPromoViewTest, ChromiumLogoImage) {
UIWindow* currentWindow = [[UIApplication sharedApplication] keyWindow]; UIWindow* currentWindow = GetAnyKeyWindow();
SigninPromoView* view = SigninPromoView* view =
[[SigninPromoView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)]; [[SigninPromoView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
view.mode = IdentityPromoViewModeNoAccounts; view.mode = IdentityPromoViewModeNoAccounts;
...@@ -36,7 +37,7 @@ TEST_F(SigninPromoViewTest, ChromiumLogoImage) { ...@@ -36,7 +37,7 @@ TEST_F(SigninPromoViewTest, ChromiumLogoImage) {
} }
TEST_F(SigninPromoViewTest, SecondaryButtonVisibility) { TEST_F(SigninPromoViewTest, SecondaryButtonVisibility) {
UIWindow* currentWindow = [[UIApplication sharedApplication] keyWindow]; UIWindow* currentWindow = GetAnyKeyWindow();
SigninPromoView* view = SigninPromoView* view =
[[SigninPromoView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)]; [[SigninPromoView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
view.mode = IdentityPromoViewModeNoAccounts; view.mode = IdentityPromoViewModeNoAccounts;
......
...@@ -264,6 +264,7 @@ source_set("unit_tests") { ...@@ -264,6 +264,7 @@ source_set("unit_tests") {
"//ios/chrome/app/strings", "//ios/chrome/app/strings",
"//ios/chrome/browser", "//ios/chrome/browser",
"//ios/chrome/browser/browser_state:test_support", "//ios/chrome/browser/browser_state:test_support",
"//ios/chrome/browser/ui/util",
"//testing/gtest", "//testing/gtest",
"//third_party/ocmock", "//third_party/ocmock",
"//ui/base", "//ui/base",
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#include "base/strings/string_split.h" #include "base/strings/string_split.h"
#include "base/strings/sys_string_conversions.h" #include "base/strings/sys_string_conversions.h"
#include "ios/chrome/browser/chrome_paths.h" #include "ios/chrome/browser/chrome_paths.h"
#include "ios/chrome/browser/ui/util/uikit_ui_util.h"
#include "ios/chrome/grit/ios_strings.h" #include "ios/chrome/grit/ios_strings.h"
#include "testing/gtest_mac.h" #include "testing/gtest_mac.h"
#include "testing/platform_test.h" #include "testing/platform_test.h"
...@@ -31,7 +32,7 @@ class OmniboxTextFieldTest : public PlatformTest { ...@@ -31,7 +32,7 @@ class OmniboxTextFieldTest : public PlatformTest {
// so that the pre-edit label's text alignment can be tested. // so that the pre-edit label's text alignment can be tested.
CGRect rect = CGRectMake(0, 0, 100, 20); CGRect rect = CGRectMake(0, 0, 100, 20);
textfield_ = [[OmniboxTextFieldIOS alloc] initWithFrame:rect]; textfield_ = [[OmniboxTextFieldIOS alloc] initWithFrame:rect];
[[[UIApplication sharedApplication] keyWindow] addSubview:textfield_]; [GetAnyKeyWindow() addSubview:textfield_];
} }
void TearDown() override { [textfield_ removeFromSuperview]; } void TearDown() override { [textfield_ removeFromSuperview]; }
......
...@@ -167,6 +167,7 @@ source_set("unit_tests") { ...@@ -167,6 +167,7 @@ source_set("unit_tests") {
"//ios/chrome/browser/ui/commands", "//ios/chrome/browser/ui/commands",
"//ios/chrome/browser/ui/main:scene_state_header", "//ios/chrome/browser/ui/main:scene_state_header",
"//ios/chrome/browser/ui/tab_switcher", "//ios/chrome/browser/ui/tab_switcher",
"//ios/chrome/browser/ui/util",
"//ios/chrome/browser/web", "//ios/chrome/browser/web",
"//ios/chrome/browser/web:page_placeholder", "//ios/chrome/browser/web:page_placeholder",
"//ios/chrome/browser/web:test_support", "//ios/chrome/browser/web:test_support",
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#import "ios/chrome/browser/ui/main/scene_state.h" #import "ios/chrome/browser/ui/main/scene_state.h"
#import "ios/chrome/browser/ui/main/scene_state_browser_agent.h" #import "ios/chrome/browser/ui/main/scene_state_browser_agent.h"
#include "ios/chrome/browser/ui/tab_switcher/tab_grid/tab_grid_coordinator_delegate.h" #include "ios/chrome/browser/ui/tab_switcher/tab_grid/tab_grid_coordinator_delegate.h"
#import "ios/chrome/browser/ui/util/uikit_ui_util.h"
#import "ios/chrome/test/block_cleanup_test.h" #import "ios/chrome/test/block_cleanup_test.h"
#include "ios/web/public/test/web_task_environment.h" #include "ios/web/public/test/web_task_environment.h"
#include "testing/gtest_mac.h" #include "testing/gtest_mac.h"
...@@ -83,7 +84,7 @@ class TabGridCoordinatorTest : public BlockCleanupTest { ...@@ -83,7 +84,7 @@ class TabGridCoordinatorTest : public BlockCleanupTest {
incognito_browser_ = std::make_unique<TestBrowser>(); incognito_browser_ = std::make_unique<TestBrowser>();
AddAgentsToBrowser(incognito_browser_.get(), scene_state_); AddAgentsToBrowser(incognito_browser_.get(), scene_state_);
UIWindow* window = [UIApplication sharedApplication].keyWindow; UIWindow* window = GetAnyKeyWindow();
coordinator_ = [[TabGridCoordinator alloc] coordinator_ = [[TabGridCoordinator alloc]
initWithWindow:window initWithWindow:window
applicationCommandEndpoint:OCMProtocolMock( applicationCommandEndpoint:OCMProtocolMock(
...@@ -95,8 +96,7 @@ class TabGridCoordinatorTest : public BlockCleanupTest { ...@@ -95,8 +96,7 @@ class TabGridCoordinatorTest : public BlockCleanupTest {
coordinator_.animationsDisabledForTesting = YES; coordinator_.animationsDisabledForTesting = YES;
// TabGirdCoordinator will make its view controller the root, so stash the // TabGirdCoordinator will make its view controller the root, so stash the
// original root view controller before starting |coordinator_|. // original root view controller before starting |coordinator_|.
original_root_view_controller_ = original_root_view_controller_ = [GetAnyKeyWindow() rootViewController];
[[[UIApplication sharedApplication] keyWindow] rootViewController];
[coordinator_ start]; [coordinator_ start];
...@@ -114,8 +114,7 @@ class TabGridCoordinatorTest : public BlockCleanupTest { ...@@ -114,8 +114,7 @@ class TabGridCoordinatorTest : public BlockCleanupTest {
void TearDown() override { void TearDown() override {
if (original_root_view_controller_) { if (original_root_view_controller_) {
[[UIApplication sharedApplication] keyWindow].rootViewController = GetAnyKeyWindow().rootViewController = original_root_view_controller_;
original_root_view_controller_;
original_root_view_controller_ = nil; original_root_view_controller_ = nil;
} }
[coordinator_ stop]; [coordinator_ stop];
......
...@@ -57,6 +57,7 @@ source_set("test_support") { ...@@ -57,6 +57,7 @@ source_set("test_support") {
"//ios/chrome/browser/policy:policy", "//ios/chrome/browser/policy:policy",
"//ios/chrome/browser/prefs:browser_prefs", "//ios/chrome/browser/prefs:browser_prefs",
"//ios/chrome/browser/safe_browsing:test_support", "//ios/chrome/browser/safe_browsing:test_support",
"//ios/chrome/browser/ui/util",
"//ios/chrome/browser/ui/util:multiwindow_util", "//ios/chrome/browser/ui/util:multiwindow_util",
"//ios/components/webui:url_constants", "//ios/components/webui:url_constants",
"//ios/public/provider/chrome/browser", "//ios/public/provider/chrome/browser",
......
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
#import "ios/chrome/browser/ui/main/scene_state.h" #import "ios/chrome/browser/ui/main/scene_state.h"
#import "ios/chrome/browser/ui/util/multi_window_support.h" #import "ios/chrome/browser/ui/util/multi_window_support.h"
#include "ios/chrome/browser/ui/util/ui_util.h" #include "ios/chrome/browser/ui/util/ui_util.h"
#include "ios/chrome/browser/ui/util/uikit_ui_util.h"
#import "ios/chrome/test/app/tab_test_util.h" #import "ios/chrome/test/app/tab_test_util.h"
#import "ios/web/public/navigation/navigation_context.h" #import "ios/web/public/navigation/navigation_context.h"
#import "ios/web/public/navigation/navigation_manager.h" #import "ios/web/public/navigation/navigation_manager.h"
...@@ -129,7 +130,7 @@ Browser* GetMainBrowser() { ...@@ -129,7 +130,7 @@ Browser* GetMainBrowser() {
} }
UIViewController* GetActiveViewController() { UIViewController* GetActiveViewController() {
UIWindow* main_window = [[UIApplication sharedApplication] keyWindow]; UIWindow* main_window = GetAnyKeyWindow();
DCHECK([main_window isKindOfClass:[ChromeOverlayWindow class]]); DCHECK([main_window isKindOfClass:[ChromeOverlayWindow class]]);
UIViewController* main_view_controller = main_window.rootViewController; UIViewController* main_view_controller = main_window.rootViewController;
......
...@@ -4,6 +4,8 @@ ...@@ -4,6 +4,8 @@
#import "ios/chrome/test/root_view_controller_test.h" #import "ios/chrome/test/root_view_controller_test.h"
#import "ios/chrome/browser/ui/util/uikit_ui_util.h"
#if !defined(__has_feature) || !__has_feature(objc_arc) #if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support." #error "This file requires ARC support."
#endif #endif
...@@ -12,16 +14,13 @@ ...@@ -12,16 +14,13 @@
// the original VC to allow restoring it at the end of the test. // the original VC to allow restoring it at the end of the test.
void RootViewControllerTest::SetRootViewController( void RootViewControllerTest::SetRootViewController(
UIViewController* new_root_view_controller) { UIViewController* new_root_view_controller) {
original_root_view_controller_ = original_root_view_controller_ = [GetAnyKeyWindow() rootViewController];
[[[UIApplication sharedApplication] keyWindow] rootViewController]; GetAnyKeyWindow().rootViewController = new_root_view_controller;
[[UIApplication sharedApplication] keyWindow].rootViewController =
new_root_view_controller;
} }
void RootViewControllerTest::TearDown() { void RootViewControllerTest::TearDown() {
if (original_root_view_controller_) { if (original_root_view_controller_) {
[[UIApplication sharedApplication] keyWindow].rootViewController = GetAnyKeyWindow().rootViewController = original_root_view_controller_;
original_root_view_controller_;
original_root_view_controller_ = nil; original_root_view_controller_ = nil;
} }
PlatformTest::TearDown(); PlatformTest::TearDown();
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
#include "base/check_op.h" #include "base/check_op.h"
#import "ios/chrome/browser/ui/util/multi_window_support.h" #import "ios/chrome/browser/ui/util/multi_window_support.h"
#import "ios/chrome/browser/ui/util/uikit_ui_util.h"
#if !defined(__has_feature) || !__has_feature(objc_arc) #if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support." #error "This file requires ARC support."
...@@ -34,7 +35,7 @@ ScopedKeyWindow::ScopedKeyWindow() { ...@@ -34,7 +35,7 @@ ScopedKeyWindow::ScopedKeyWindow() {
if (!current_key_window_) { if (!current_key_window_) {
current_key_window_ = current_key_window_ =
[[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds]; [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
original_key_window_ = [UIApplication sharedApplication].keyWindow; original_key_window_ = GetAnyKeyWindow();
} }
[current_key_window_ makeKeyAndVisible]; [current_key_window_ makeKeyAndVisible];
} }
......
...@@ -353,6 +353,7 @@ source_set("ios_web_web_state_unittests") { ...@@ -353,6 +353,7 @@ source_set("ios_web_web_state_unittests") {
"//ios/testing:ocmock_support", "//ios/testing:ocmock_support",
"//ios/web", "//ios/web",
"//ios/web/common", "//ios/web/common",
"//ios/web/common:uikit",
"//ios/web/common:web_view_creation_util", "//ios/web/common:web_view_creation_util",
"//ios/web/find_in_page", "//ios/web/find_in_page",
"//ios/web/js_messaging", "//ios/web/js_messaging",
...@@ -453,6 +454,7 @@ source_set("ios_web_web_state_ui_unittests") { ...@@ -453,6 +454,7 @@ source_set("ios_web_web_state_ui_unittests") {
"//ios/net", "//ios/net",
"//ios/testing:ocmock_support", "//ios/testing:ocmock_support",
"//ios/web/common", "//ios/web/common",
"//ios/web/common:uikit",
"//ios/web/js_messaging", "//ios/web/js_messaging",
"//ios/web/navigation", "//ios/web/navigation",
"//ios/web/navigation:block_universal_links_buildflags", "//ios/web/navigation:block_universal_links_buildflags",
......
...@@ -33,6 +33,7 @@ source_set("browsing_data_unittests") { ...@@ -33,6 +33,7 @@ source_set("browsing_data_unittests") {
"//ios/net", "//ios/net",
"//ios/net:test_support", "//ios/net:test_support",
"//ios/web/common", "//ios/web/common",
"//ios/web/common:uikit",
"//ios/web/net/cookies", "//ios/web/net/cookies",
"//ios/web/public/test", "//ios/web/public/test",
"//ios/web/public/test/fakes", "//ios/web/public/test/fakes",
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#include "base/bind.h" #include "base/bind.h"
#import "base/test/ios/wait_util.h" #import "base/test/ios/wait_util.h"
#include "base/test/task_environment.h" #include "base/test/task_environment.h"
#import "ios/web/common/uikit_ui_util.h"
#include "ios/web/public/test/fakes/fake_browser_state.h" #include "ios/web/public/test/fakes/fake_browser_state.h"
#include "testing/platform_test.h" #include "testing/platform_test.h"
...@@ -110,11 +111,10 @@ class BrowsingDataRemoverTest : public PlatformTest { ...@@ -110,11 +111,10 @@ class BrowsingDataRemoverTest : public PlatformTest {
public: public:
void SetUp() override { void SetUp() override {
PlatformTest::SetUp(); PlatformTest::SetUp();
original_root_view_controller_ = original_root_view_controller_ = GetAnyKeyWindow().rootViewController;
UIApplication.sharedApplication.keyWindow.rootViewController;
UIViewController* controller = [[UIViewController alloc] init]; UIViewController* controller = [[UIViewController alloc] init];
UIApplication.sharedApplication.keyWindow.rootViewController = controller; GetAnyKeyWindow().rootViewController = controller;
WKWebViewConfiguration* config = [[WKWebViewConfiguration alloc] init]; WKWebViewConfiguration* config = [[WKWebViewConfiguration alloc] init];
WKWebView* web_view = [[WKWebView alloc] initWithFrame:CGRectZero WKWebView* web_view = [[WKWebView alloc] initWithFrame:CGRectZero
configuration:config]; configuration:config];
...@@ -138,8 +138,7 @@ class BrowsingDataRemoverTest : public PlatformTest { ...@@ -138,8 +138,7 @@ class BrowsingDataRemoverTest : public PlatformTest {
void TearDown() override { void TearDown() override {
if (original_root_view_controller_) { if (original_root_view_controller_) {
UIApplication.sharedApplication.keyWindow.rootViewController = GetAnyKeyWindow().rootViewController = original_root_view_controller_;
original_root_view_controller_;
original_root_view_controller_ = nil; original_root_view_controller_ = nil;
} }
PlatformTest::TearDown(); PlatformTest::TearDown();
......
...@@ -9,6 +9,7 @@ source_set("fakes") { ...@@ -9,6 +9,7 @@ source_set("fakes") {
deps = [ deps = [
"//base", "//base",
"//ios/web/common", "//ios/web/common",
"//ios/web/common:uikit",
"//ios/web/js_messaging", "//ios/web/js_messaging",
"//ios/web/navigation:core", "//ios/web/navigation:core",
"//ios/web/public/deprecated", "//ios/web/public/deprecated",
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#include "base/strings/stringprintf.h" #include "base/strings/stringprintf.h"
#include "base/strings/sys_string_conversions.h" #include "base/strings/sys_string_conversions.h"
#include "base/task/post_task.h" #include "base/task/post_task.h"
#import "ios/web/common/uikit_ui_util.h"
#include "ios/web/public/test/error_test_util.h" #include "ios/web/public/test/error_test_util.h"
#import "ios/web/public/test/js_test_util.h" #import "ios/web/public/test/js_test_util.h"
#include "ios/web/public/thread/web_task_traits.h" #include "ios/web/public/thread/web_task_traits.h"
...@@ -128,7 +129,7 @@ void FakeWebClient::PrepareErrorPage( ...@@ -128,7 +129,7 @@ void FakeWebClient::PrepareErrorPage(
} }
UIView* FakeWebClient::GetWindowedContainer() { UIView* FakeWebClient::GetWindowedContainer() {
return UIApplication.sharedApplication.keyWindow.rootViewController.view; return GetAnyKeyWindow().rootViewController.view;
} }
UserAgentType FakeWebClient::GetDefaultUserAgent( UserAgentType FakeWebClient::GetDefaultUserAgent(
......
...@@ -96,15 +96,15 @@ TEST_F(WKWebViewSecurityUtilTest, MakingTrustValid) { ...@@ -96,15 +96,15 @@ TEST_F(WKWebViewSecurityUtilTest, MakingTrustValid) {
base::ScopedCFTypeRef<SecTrustRef> trust = base::ScopedCFTypeRef<SecTrustRef> trust =
CreateTestTrust(MakeTestCertChain(kTestSubject)); CreateTestTrust(MakeTestCertChain(kTestSubject));
SecTrustResultType result = kSecTrustResultInvalid; CFErrorRef error;
SecTrustEvaluate(trust, &result); BOOL trusted = SecTrustEvaluateWithError(trust, &error);
EXPECT_EQ(kSecTrustResultRecoverableTrustFailure, result); EXPECT_TRUE(!trusted && error);
// Make sure that trust becomes valid after // Make sure that trust becomes valid after
// |EnsureFutureTrustEvaluationSucceeds| call. // |EnsureFutureTrustEvaluationSucceeds| call.
EnsureFutureTrustEvaluationSucceeds(trust); EnsureFutureTrustEvaluationSucceeds(trust);
SecTrustEvaluate(trust, &result); trusted = SecTrustEvaluateWithError(trust, &error);
EXPECT_EQ(kSecTrustResultProceed, result); EXPECT_TRUE(trusted && !error);
} }
// Tests CreateCertFromTrust. // Tests CreateCertFromTrust.
......
...@@ -56,6 +56,7 @@ source_set("test_support") { ...@@ -56,6 +56,7 @@ source_set("test_support") {
"//components/crash/core/common", "//components/crash/core/common",
"//ios/testing:verify_custom_webkit", "//ios/testing:verify_custom_webkit",
"//ios/web", "//ios/web",
"//ios/web/common:uikit",
"//ios/web/common:web_view_creation_util", "//ios/web/common:web_view_creation_util",
"//ios/web/navigation:core", "//ios/web/navigation:core",
"//ios/web/public/test:util", "//ios/web/public/test:util",
......
...@@ -20,8 +20,8 @@ NS_ASSUME_NONNULL_BEGIN ...@@ -20,8 +20,8 @@ NS_ASSUME_NONNULL_BEGIN
@property(nonatomic) NSURLSessionTaskState state; @property(nonatomic) NSURLSessionTaskState state;
@property(nonatomic, nullable, copy) NSURLResponse* response; @property(nonatomic, nullable, copy) NSURLResponse* response;
- (nullable instancetype)initWithURL:(NSURL*)URL NS_DESIGNATED_INITIALIZER; - (nullable instancetype)initWithURL:(NSURL*)URL; // NS_DESIGNATED_INITIALIZER;
- (nonnull instancetype)init NS_UNAVAILABLE; // - (nonnull instancetype)init NS_UNAVAILABLE;
@end @end
......
...@@ -24,11 +24,9 @@ ...@@ -24,11 +24,9 @@
@synthesize response = _response; @synthesize response = _response;
- (instancetype)initWithURL:(NSURL*)URL { - (instancetype)initWithURL:(NSURL*)URL {
if ((self = [super init])) {
_state = NSURLSessionTaskStateSuspended; _state = NSURLSessionTaskStateSuspended;
_currentRequest = [NSURLRequest requestWithURL:URL]; _currentRequest = [NSURLRequest requestWithURL:URL];
_originalRequest = [NSURLRequest requestWithURL:URL]; _originalRequest = [NSURLRequest requestWithURL:URL];
}
return self; return self;
} }
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include "base/memory/ptr_util.h" #include "base/memory/ptr_util.h"
#include "base/scoped_observer.h" #include "base/scoped_observer.h"
#import "base/test/ios/wait_util.h" #import "base/test/ios/wait_util.h"
#import "ios/web/common/uikit_ui_util.h"
#import "ios/web/common/web_view_creation_util.h" #import "ios/web/common/web_view_creation_util.h"
#import "ios/web/public/test/js_test_util.h" #import "ios/web/public/test/js_test_util.h"
#include "ios/web/public/web_state_observer.h" #include "ios/web/public/web_state_observer.h"
...@@ -65,8 +66,7 @@ void WebIntTest::SetUp() { ...@@ -65,8 +66,7 @@ void WebIntTest::SetUp() {
web_state_ = web::WebState::Create(web_state_create_params); web_state_ = web::WebState::Create(web_state_create_params);
// Resize the webview so that pages can be properly rendered. // Resize the webview so that pages can be properly rendered.
web_state()->GetView().frame = web_state()->GetView().frame = GetAnyKeyWindow().bounds;
[UIApplication sharedApplication].keyWindow.bounds;
web_state()->SetDelegate(&web_state_delegate_); web_state()->SetDelegate(&web_state_delegate_);
web_state()->SetKeepRenderProcessAlive(true); web_state()->SetKeepRenderProcessAlive(true);
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#import "ios/web/common/crw_content_view.h" #import "ios/web/common/crw_content_view.h"
#import "ios/web/common/crw_web_view_content_view.h" #import "ios/web/common/crw_web_view_content_view.h"
#include "ios/web/common/features.h" #include "ios/web/common/features.h"
#import "ios/web/common/uikit_ui_util.h"
#import "ios/web/js_messaging/crw_js_injector.h" #import "ios/web/js_messaging/crw_js_injector.h"
#import "ios/web/js_messaging/web_view_js_utils.h" #import "ios/web/js_messaging/web_view_js_utils.h"
#include "ios/web/navigation/block_universal_links_buildflags.h" #include "ios/web/navigation/block_universal_links_buildflags.h"
...@@ -167,10 +168,14 @@ class CRWWebControllerTest : public WebTestWithWebController { ...@@ -167,10 +168,14 @@ class CRWWebControllerTest : public WebTestWithWebController {
// The value for web view OCMock objects to expect for |-setFrame:|. // The value for web view OCMock objects to expect for |-setFrame:|.
CGRect GetExpectedWebViewFrame() const { CGRect GetExpectedWebViewFrame() const {
CGSize container_view_size = CGSize container_view_size = GetAnyKeyWindow().bounds.size;
UIApplication.sharedApplication.keyWindow.bounds.size; #if !defined(__IPHONE_13_0) || __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_13_0
container_view_size.height -= container_view_size.height -=
CGRectGetHeight([UIApplication sharedApplication].statusBarFrame); CGRectGetHeight([UIApplication sharedApplication].statusBarFrame);
#else
container_view_size.height -= CGRectGetHeight(
GetAnyKeyWindow().windowScene.statusBarManager.statusBarFrame);
#endif
return {CGPointZero, container_view_size}; return {CGPointZero, container_view_size};
} }
...@@ -339,7 +344,7 @@ TEST_F(CRWWebControllerTest, WebViewCreatedAfterEnsureWebViewCreated) { ...@@ -339,7 +344,7 @@ TEST_F(CRWWebControllerTest, WebViewCreatedAfterEnsureWebViewCreated) {
TEST_F(CRWWebControllerTest, RemoveWebViewFromViewHierarchy) { TEST_F(CRWWebControllerTest, RemoveWebViewFromViewHierarchy) {
// Make sure that the WebController view has a window to avoid stashing the // Make sure that the WebController view has a window to avoid stashing the
// WebView once created. // WebView once created.
[UIApplication.sharedApplication.keyWindow addSubview:web_controller().view]; [GetAnyKeyWindow() addSubview:web_controller().view];
// Get the web view. // Get the web view.
[web_controller() removeWebView]; [web_controller() removeWebView];
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#include "base/test/gmock_callback_support.h" #include "base/test/gmock_callback_support.h"
#import "base/test/ios/wait_util.h" #import "base/test/ios/wait_util.h"
#include "ios/web/common/features.h" #include "ios/web/common/features.h"
#import "ios/web/common/uikit_ui_util.h"
#import "ios/web/navigation/navigation_context_impl.h" #import "ios/web/navigation/navigation_context_impl.h"
#import "ios/web/navigation/navigation_item_impl.h" #import "ios/web/navigation/navigation_item_impl.h"
#import "ios/web/navigation/serializable_user_data_manager_impl.h" #import "ios/web/navigation/serializable_user_data_manager_impl.h"
...@@ -1189,7 +1190,7 @@ TEST_F(WebStateImplTest, VisibilitychangeEventFired) { ...@@ -1189,7 +1190,7 @@ TEST_F(WebStateImplTest, VisibilitychangeEventFired) {
// Add the WebState to the view hierarchy so the visibilitychange event is // Add the WebState to the view hierarchy so the visibilitychange event is
// fired. // fired.
UIWindow* window = [UIApplication sharedApplication].keyWindow; UIWindow* window = GetAnyKeyWindow();
[window addSubview:web_state_->GetView()]; [window addSubview:web_state_->GetView()];
// Load the HTML content. // Load the HTML content.
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#include "base/values.h" #include "base/values.h"
#import "ios/net/protocol_handler_util.h" #import "ios/net/protocol_handler_util.h"
#include "ios/web/common/features.h" #include "ios/web/common/features.h"
#import "ios/web/common/uikit_ui_util.h"
#import "ios/web/navigation/navigation_manager_impl.h" #import "ios/web/navigation/navigation_manager_impl.h"
#import "ios/web/navigation/wk_navigation_util.h" #import "ios/web/navigation/wk_navigation_util.h"
#include "ios/web/public/js_messaging/web_frame.h" #include "ios/web/public/js_messaging/web_frame.h"
...@@ -185,8 +186,7 @@ TEST_F(WebStateTest, Snapshot) { ...@@ -185,8 +186,7 @@ TEST_F(WebStateTest, Snapshot) {
LoadHtml("<html><div style='background-color:#FF0000; width:50%; " LoadHtml("<html><div style='background-color:#FF0000; width:50%; "
"height:100%;'></div></html>")); "height:100%;'></div></html>"));
__block bool snapshot_complete = false; __block bool snapshot_complete = false;
[[[UIApplication sharedApplication] keyWindow] [GetAnyKeyWindow() addSubview:web_state()->GetView()];
addSubview:web_state()->GetView()];
// The subview is added but not immediately painted, so a small delay is // The subview is added but not immediately painted, so a small delay is
// necessary. // necessary.
CGRect rect = [web_state()->GetView() bounds]; CGRect rect = [web_state()->GetView() bounds];
...@@ -217,8 +217,7 @@ TEST_F(WebStateTest, Snapshot) { ...@@ -217,8 +217,7 @@ TEST_F(WebStateTest, Snapshot) {
// Tests that the create PDF method retuns an PDF of a rendered html page. // Tests that the create PDF method retuns an PDF of a rendered html page.
TEST_F(WebStateTest, CreateFullPagePdf_ValidURL) { TEST_F(WebStateTest, CreateFullPagePdf_ValidURL) {
[[[UIApplication sharedApplication] keyWindow] [GetAnyKeyWindow() addSubview:web_state()->GetView()];
addSubview:web_state()->GetView()];
// Load a URL and some HTML in the WebState. // Load a URL and some HTML in the WebState.
GURL url("https://www.chromium.org"); GURL url("https://www.chromium.org");
...@@ -254,8 +253,7 @@ TEST_F(WebStateTest, CreateFullPagePdf_ValidURL) { ...@@ -254,8 +253,7 @@ TEST_F(WebStateTest, CreateFullPagePdf_ValidURL) {
CGSize pdf_size = CGSize pdf_size =
CGPDFPageGetBoxRect(CGPDFDocumentGetPage(pdf, 1), kCGPDFMediaBox).size; CGPDFPageGetBoxRect(CGPDFDocumentGetPage(pdf, 1), kCGPDFMediaBox).size;
CGFloat kSaveAreaTopInset = CGFloat kSaveAreaTopInset = GetAnyKeyWindow().safeAreaInsets.top;
UIApplication.sharedApplication.keyWindow.safeAreaInsets.top;
EXPECT_GE(pdf_size.height, EXPECT_GE(pdf_size.height,
UIScreen.mainScreen.bounds.size.height - kSaveAreaTopInset); UIScreen.mainScreen.bounds.size.height - kSaveAreaTopInset);
EXPECT_GE(pdf_size.width, [[UIScreen mainScreen] bounds].size.width); EXPECT_GE(pdf_size.width, [[UIScreen mainScreen] bounds].size.width);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment