Index: ios/chrome/browser/ui/main/main_view_controller_unittest.mm |
diff --git a/ios/chrome/browser/ui/main/main_view_controller_unittest.mm b/ios/chrome/browser/ui/main/main_view_controller_unittest.mm |
index 9fe78a95263f2743f9ced77e6cb9837995bdb8f6..1efca18a20f5a2ec43be5127c8a3cfd2c98c337a 100644 |
--- a/ios/chrome/browser/ui/main/main_view_controller_unittest.mm |
+++ b/ios/chrome/browser/ui/main/main_view_controller_unittest.mm |
@@ -6,9 +6,12 @@ |
#import <UIKit/UIKit.h> |
-#include "base/mac/scoped_nsobject.h" |
#include "testing/gtest_mac.h" |
+#if !defined(__has_feature) || !__has_feature(objc_arc) |
+#error "This file requires ARC support." |
+#endif |
+ |
@interface HiddenStatusBarViewController : UIViewController |
@end |
@@ -20,9 +23,9 @@ |
@interface MockViewController : UIViewController |
@property(nonatomic, readonly) NSInteger didMoveToParentViewControllerCount; |
-@property(nonatomic, readonly) id didMoveToParentViewControllerArgument; |
+@property(nonatomic, weak, readonly) id didMoveToParentViewControllerArgument; |
@property(nonatomic, readonly) NSInteger willMoveToParentViewControllerCount; |
-@property(nonatomic, readonly) id willMoveToParentViewControllerArgument; |
+@property(nonatomic, weak, readonly) id willMoveToParentViewControllerArgument; |
@end |
@implementation MockViewController |
@@ -50,57 +53,52 @@ |
namespace { |
TEST(MainViewControllerTest, ActiveVC) { |
- base::scoped_nsobject<MainViewController> main_view_controller( |
- [[MainViewController alloc] init]); |
- base::scoped_nsobject<UIViewController> child_view_controller_1( |
- [[UIViewController alloc] init]); |
- base::scoped_nsobject<UIViewController> child_view_controller_2( |
- [[UIViewController alloc] init]); |
+ MainViewController* main_view_controller = [[MainViewController alloc] init]; |
+ UIViewController* child_view_controller_1 = [[UIViewController alloc] init]; |
+ UIViewController* child_view_controller_2 = [[UIViewController alloc] init]; |
// Test that the active view controller is always the first child view |
// controller. |
EXPECT_EQ(nil, [main_view_controller activeViewController]); |
[main_view_controller addChildViewController:child_view_controller_1]; |
- EXPECT_EQ(child_view_controller_1.get(), |
+ EXPECT_EQ(child_view_controller_1, |
[main_view_controller activeViewController]); |
[main_view_controller addChildViewController:child_view_controller_2]; |
- EXPECT_EQ(child_view_controller_1.get(), |
+ EXPECT_EQ(child_view_controller_1, |
[main_view_controller activeViewController]); |
[child_view_controller_1 removeFromParentViewController]; |
- EXPECT_EQ(child_view_controller_2.get(), |
+ EXPECT_EQ(child_view_controller_2, |
[main_view_controller activeViewController]); |
} |
TEST(MainViewControllerTest, SetActiveVC) { |
- base::scoped_nsobject<MainViewController> main_view_controller( |
- [[MainViewController alloc] init]); |
+ MainViewController* main_view_controller = [[MainViewController alloc] init]; |
CGRect windowRect = CGRectMake(0, 0, 200, 200); |
[main_view_controller view].frame = windowRect; |
- base::scoped_nsobject<MockViewController> child_view_controller_1( |
- [[MockViewController alloc] init]); |
+ MockViewController* child_view_controller_1 = |
+ [[MockViewController alloc] init]; |
[child_view_controller_1 view].frame = CGRectMake(0, 0, 10, 10); |
[main_view_controller setActiveViewController:child_view_controller_1]; |
- EXPECT_EQ(child_view_controller_1.get(), |
+ EXPECT_EQ(child_view_controller_1, |
[[main_view_controller childViewControllers] firstObject]); |
EXPECT_EQ([child_view_controller_1 view], |
[[main_view_controller view].subviews firstObject]); |
EXPECT_NSEQ(NSStringFromCGRect(windowRect), |
NSStringFromCGRect([child_view_controller_1 view].frame)); |
EXPECT_EQ(1, [child_view_controller_1 didMoveToParentViewControllerCount]); |
- EXPECT_EQ(main_view_controller.get(), |
+ EXPECT_EQ(main_view_controller, |
[child_view_controller_1 didMoveToParentViewControllerArgument]); |
// Expect there to have also been an automatic call to |
// -willMoveToParentViewController. |
EXPECT_EQ(1, [child_view_controller_1 willMoveToParentViewControllerCount]); |
- EXPECT_EQ(main_view_controller.get(), |
+ EXPECT_EQ(main_view_controller, |
[child_view_controller_1 willMoveToParentViewControllerArgument]); |
- base::scoped_nsobject<UIViewController> child_view_controller_2( |
- [[UIViewController alloc] init]); |
+ UIViewController* child_view_controller_2 = [[UIViewController alloc] init]; |
[main_view_controller setActiveViewController:child_view_controller_2]; |
- EXPECT_EQ(child_view_controller_2.get(), |
+ EXPECT_EQ(child_view_controller_2, |
[[main_view_controller childViewControllers] firstObject]); |
EXPECT_EQ(1U, [[main_view_controller childViewControllers] count]); |
EXPECT_EQ(nil, [[child_view_controller_1 view] superview]); |
@@ -115,29 +113,27 @@ TEST(MainViewControllerTest, SetActiveVC) { |
} |
TEST(MainViewControllerTest, StatusBar) { |
- base::scoped_nsobject<MainViewController> main_view_controller( |
- [[MainViewController alloc] init]); |
+ MainViewController* main_view_controller = [[MainViewController alloc] init]; |
// MVC needs to be the root view controller for this to work, so save the |
// current one and restore it at the end of the test. |
UIViewController* root_view_controller = |
[[[UIApplication sharedApplication] keyWindow] rootViewController]; |
[[UIApplication sharedApplication] keyWindow].rootViewController = |
main_view_controller; |
- base::scoped_nsobject<UIViewController> status_bar_visible_view_controller( |
- [[UIViewController alloc] init]); |
+ UIViewController* status_bar_visible_view_controller = |
+ [[UIViewController alloc] init]; |
[main_view_controller |
setActiveViewController:status_bar_visible_view_controller]; |
// Check if the status bar is hidden by testing if the status bar rect is |
// CGRectZero. |
EXPECT_FALSE(CGRectEqualToRect( |
[UIApplication sharedApplication].statusBarFrame, CGRectZero)); |
- base::scoped_nsobject<HiddenStatusBarViewController> |
- status_bar_hidden_view_controller( |
- [[HiddenStatusBarViewController alloc] init]); |
+ HiddenStatusBarViewController* status_bar_hidden_view_controller = |
+ [[HiddenStatusBarViewController alloc] init]; |
[main_view_controller |
setActiveViewController:status_bar_hidden_view_controller]; |
EXPECT_EQ([main_view_controller childViewControllerForStatusBarHidden], |
- status_bar_hidden_view_controller.get()); |
+ status_bar_hidden_view_controller); |
EXPECT_TRUE(CGRectEqualToRect( |
[UIApplication sharedApplication].statusBarFrame, CGRectZero)); |
[[UIApplication sharedApplication] keyWindow].rootViewController = |