Index: ios/chrome/browser/ui/ntp/recent_tabs/recent_tabs_panel_controller_unittest.mm |
diff --git a/ios/chrome/browser/ui/ntp/recent_tabs/recent_tabs_panel_controller_unittest.mm b/ios/chrome/browser/ui/ntp/recent_tabs/recent_tabs_panel_controller_unittest.mm |
index 533751502594ac3009d7d888bd2b4a0379db243d..db5e7c2cf7705aec1e1289f2d436fab3e997fda3 100644 |
--- a/ios/chrome/browser/ui/ntp/recent_tabs/recent_tabs_panel_controller_unittest.mm |
+++ b/ios/chrome/browser/ui/ntp/recent_tabs/recent_tabs_panel_controller_unittest.mm |
@@ -8,8 +8,6 @@ |
#include <memory> |
-#import "base/mac/scoped_nsautorelease_pool.h" |
-#import "base/mac/scoped_nsobject.h" |
#include "base/memory/ptr_util.h" |
#include "components/browser_sync/profile_sync_service.h" |
#include "components/browser_sync/profile_sync_service_mock.h" |
@@ -32,6 +30,10 @@ |
#import "third_party/ocmock/OCMock/OCMock.h" |
#import "third_party/ocmock/gtest_support.h" |
+#if !defined(__has_feature) || !__has_feature(objc_arc) |
+#error "This file requires ARC support." |
+#endif |
+ |
using testing::_; |
using testing::AtLeast; |
using testing::Return; |
@@ -124,8 +126,8 @@ class RecentTabsPanelControllerTest : public BlockCleanupTest { |
EXPECT_CALL(*sync_service, GetOpenTabsUIDelegate()) |
.WillRepeatedly(Return(nullptr)); |
- mock_table_view_controller_.reset([[OCMockObject |
- niceMockForClass:[RecentTabsTableViewController class]] retain]); |
+ mock_table_view_controller_ = |
+ [OCMockObject niceMockForClass:[RecentTabsTableViewController class]]; |
} |
void SetupSyncState(BOOL signedIn, |
@@ -172,10 +174,10 @@ class RecentTabsPanelControllerTest : public BlockCleanupTest { |
chrome_browser_state_.get())); |
EXPECT_CALL(*sync_service, AddObserver(_)).Times(AtLeast(1)); |
EXPECT_CALL(*sync_service, RemoveObserver(_)).Times(AtLeast(1)); |
- controller_.reset([[RecentTabsPanelController alloc] |
+ controller_ = [[RecentTabsPanelController alloc] |
initWithController:(RecentTabsTableViewController*) |
- mock_table_view_controller_.get() |
- browserState:chrome_browser_state_.get()]); |
+ mock_table_view_controller_ |
+ browserState:chrome_browser_state_.get()]; |
} |
protected: |
@@ -187,19 +189,13 @@ class RecentTabsPanelControllerTest : public BlockCleanupTest { |
std::unique_ptr<OpenTabsUIDelegateMock> open_tabs_ui_delegate_; |
// Must be declared *after* |chrome_browser_state_| so it can outlive it. |
- base::scoped_nsobject<OCMockObject> mock_table_view_controller_; |
- base::scoped_nsobject<RecentTabsPanelController> controller_; |
- |
- // Sets up a private Autorelease Pool so objects retained by OCMockObject |
stkhapugin
2017/02/06 15:52:50
Please add this to notable issues.
lody
2017/02/07 10:06:27
Done.
jif-google
2017/02/07 10:14:21
Seems like a bug in OCMock?
|
- // are released as soon as possible. Otherwise, weak pointers in the |
- // objects retained by OCMockObject may surface as a BADACC when the |
- // unit test autorelease pool is released. |
- base::mac::ScopedNSAutoreleasePool pool_; |
+ OCMockObject* mock_table_view_controller_; |
+ RecentTabsPanelController* controller_; |
}; |
TEST_F(RecentTabsPanelControllerTest, TestConstructorDestructor) { |
CreateController(); |
- EXPECT_TRUE(controller_.get()); |
+ EXPECT_TRUE(controller_); |
} |
TEST_F(RecentTabsPanelControllerTest, TestUserSignedOut) { |