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

Side by Side Diff: ios/chrome/browser/ui/settings/import_data_collection_view_controller_unittest.mm

Issue 2806323003: [ObjC ARC] Converts ios/chrome/browser/ui/settings:unit_tests to ARC. (Closed)
Patch Set: rebase Created 3 years, 8 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/browser/ui/settings/import_data_collection_view_controller.h " 5 #import "ios/chrome/browser/ui/settings/import_data_collection_view_controller.h "
6 6
7 #include "base/mac/foundation_util.h" 7 #include "base/mac/foundation_util.h"
8 #include "base/strings/sys_string_conversions.h" 8 #include "base/strings/sys_string_conversions.h"
9 #import "ios/chrome/browser/ui/collection_view/cells/collection_view_detail_item .h" 9 #import "ios/chrome/browser/ui/collection_view/cells/collection_view_detail_item .h"
10 #import "ios/chrome/browser/ui/collection_view/collection_view_controller_test.h " 10 #import "ios/chrome/browser/ui/collection_view/collection_view_controller_test.h "
11 #import "ios/chrome/browser/ui/collection_view/collection_view_model.h" 11 #import "ios/chrome/browser/ui/collection_view/collection_view_model.h"
12 #import "ios/chrome/browser/ui/settings/cells/card_multiline_item.h" 12 #import "ios/chrome/browser/ui/settings/cells/card_multiline_item.h"
13 #include "ios/chrome/grit/ios_strings.h" 13 #include "ios/chrome/grit/ios_strings.h"
14 #include "testing/gtest/include/gtest/gtest.h" 14 #include "testing/gtest/include/gtest/gtest.h"
15 #import "testing/gtest_mac.h" 15 #import "testing/gtest_mac.h"
16 #include "testing/platform_test.h" 16 #include "testing/platform_test.h"
17 #include "ui/base/l10n/l10n_util_mac.h" 17 #include "ui/base/l10n/l10n_util_mac.h"
18 18
19 #if !defined(__has_feature) || !__has_feature(objc_arc)
20 #error "This file requires ARC support."
21 #endif
22
19 @interface ImportDataControllerTestDelegate 23 @interface ImportDataControllerTestDelegate
20 : NSObject<ImportDataControllerDelegate> 24 : NSObject<ImportDataControllerDelegate>
21 @property(nonatomic, readonly) BOOL didChooseClearDataPolicyCalled; 25 @property(nonatomic, readonly) BOOL didChooseClearDataPolicyCalled;
22 @property(nonatomic, readonly) ShouldClearData shouldClearData; 26 @property(nonatomic, readonly) ShouldClearData shouldClearData;
23 @end 27 @end
24 28
25 @implementation ImportDataControllerTestDelegate 29 @implementation ImportDataControllerTestDelegate
26 30
27 @synthesize didChooseClearDataPolicyCalled = _didChooseClearDataPolicyCalled; 31 @synthesize didChooseClearDataPolicyCalled = _didChooseClearDataPolicyCalled;
28 @synthesize shouldClearData = _shouldClearData; 32 @synthesize shouldClearData = _shouldClearData;
(...skipping 12 matching lines...) Expand all
41 : public CollectionViewControllerTest { 45 : public CollectionViewControllerTest {
42 public: 46 public:
43 ImportDataControllerTestDelegate* delegate() { return delegate_; } 47 ImportDataControllerTestDelegate* delegate() { return delegate_; }
44 48
45 protected: 49 protected:
46 void SetUp() override { 50 void SetUp() override {
47 CollectionViewControllerTest::SetUp(); 51 CollectionViewControllerTest::SetUp();
48 is_signed_in_ = true; 52 is_signed_in_ = true;
49 } 53 }
50 54
51 CollectionViewController* NewController() override NS_RETURNS_RETAINED { 55 CollectionViewController* InstantiateController() override {
52 delegate_.reset([[ImportDataControllerTestDelegate alloc] init]); 56 delegate_ = [[ImportDataControllerTestDelegate alloc] init];
53 return [[ImportDataCollectionViewController alloc] 57 return [[ImportDataCollectionViewController alloc]
54 initWithDelegate:delegate_ 58 initWithDelegate:delegate_
55 fromEmail:@"fromEmail@gmail.com" 59 fromEmail:@"fromEmail@gmail.com"
56 toEmail:@"toEmail@gmail.com" 60 toEmail:@"toEmail@gmail.com"
57 isSignedIn:is_signed_in_]; 61 isSignedIn:is_signed_in_];
58 } 62 }
59 63
60 void set_is_signed_in(bool is_signed_in) { is_signed_in_ = is_signed_in; } 64 void set_is_signed_in(bool is_signed_in) { is_signed_in_ = is_signed_in; }
61 65
62 bool is_signed_in_; 66 bool is_signed_in_;
63 base::scoped_nsobject<ImportDataControllerTestDelegate> delegate_; 67 ImportDataControllerTestDelegate* delegate_;
64 }; 68 };
65 69
66 TEST_F(ImportDataCollectionViewControllerTest, TestModelSignedIn) { 70 TEST_F(ImportDataCollectionViewControllerTest, TestModelSignedIn) {
67 CreateController(); 71 CreateController();
68 CheckController(); 72 CheckController();
69 ASSERT_EQ(2, NumberOfSections()); 73 ASSERT_EQ(2, NumberOfSections());
70 EXPECT_EQ(1, NumberOfItemsInSection(0)); 74 EXPECT_EQ(1, NumberOfItemsInSection(0));
71 CardMultilineItem* item = GetCollectionViewItem(0, 0); 75 CardMultilineItem* item = GetCollectionViewItem(0, 0);
72 EXPECT_NSEQ( 76 EXPECT_NSEQ(
73 l10n_util::GetNSStringF(IDS_IOS_OPTIONS_IMPORT_DATA_HEADER, 77 l10n_util::GetNSStringF(IDS_IOS_OPTIONS_IMPORT_DATA_HEADER,
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 150
147 // Tests that the default choice when the user is signed in is Clear Data and 151 // Tests that the default choice when the user is signed in is Clear Data and
148 // that tapping continue will correctly select it. Regression test for 152 // that tapping continue will correctly select it. Regression test for
149 // crbug.com/649533 153 // crbug.com/649533
150 TEST_F(ImportDataCollectionViewControllerTest, TestDefaultChoiceSignedIn) { 154 TEST_F(ImportDataCollectionViewControllerTest, TestDefaultChoiceSignedIn) {
151 CreateController(); 155 CreateController();
152 156
153 EXPECT_FALSE(delegate().didChooseClearDataPolicyCalled); 157 EXPECT_FALSE(delegate().didChooseClearDataPolicyCalled);
154 UIBarButtonItem* item = controller().navigationItem.rightBarButtonItem; 158 UIBarButtonItem* item = controller().navigationItem.rightBarButtonItem;
155 ASSERT_TRUE(item); 159 ASSERT_TRUE(item);
160 #pragma clang diagnostic push
161 #pragma clang diagnostic ignored "-Warc-performSelector-leaks"
156 [item.target performSelector:item.action]; 162 [item.target performSelector:item.action];
163 #pragma clang diagnostic pop
157 164
158 EXPECT_TRUE(delegate().didChooseClearDataPolicyCalled); 165 EXPECT_TRUE(delegate().didChooseClearDataPolicyCalled);
159 EXPECT_EQ(SHOULD_CLEAR_DATA_CLEAR_DATA, delegate().shouldClearData); 166 EXPECT_EQ(SHOULD_CLEAR_DATA_CLEAR_DATA, delegate().shouldClearData);
160 } 167 }
161 168
162 // Tests that the default choice when the user is signed out is Merge Data and 169 // Tests that the default choice when the user is signed out is Merge Data and
163 // that tapping continue will correctly select it. Regression test for 170 // that tapping continue will correctly select it. Regression test for
164 // crbug.com/649533 171 // crbug.com/649533
165 TEST_F(ImportDataCollectionViewControllerTest, TestDefaultChoiceSignedOut) { 172 TEST_F(ImportDataCollectionViewControllerTest, TestDefaultChoiceSignedOut) {
166 set_is_signed_in(false); 173 set_is_signed_in(false);
167 CreateController(); 174 CreateController();
168 175
169 EXPECT_FALSE(delegate().didChooseClearDataPolicyCalled); 176 EXPECT_FALSE(delegate().didChooseClearDataPolicyCalled);
170 UIBarButtonItem* item = controller().navigationItem.rightBarButtonItem; 177 UIBarButtonItem* item = controller().navigationItem.rightBarButtonItem;
171 ASSERT_TRUE(item); 178 ASSERT_TRUE(item);
179 #pragma clang diagnostic push
180 #pragma clang diagnostic ignored "-Warc-performSelector-leaks"
172 [item.target performSelector:item.action]; 181 [item.target performSelector:item.action];
182 #pragma clang diagnostic pop
173 183
174 EXPECT_TRUE(delegate().didChooseClearDataPolicyCalled); 184 EXPECT_TRUE(delegate().didChooseClearDataPolicyCalled);
175 EXPECT_EQ(SHOULD_CLEAR_DATA_MERGE_DATA, delegate().shouldClearData); 185 EXPECT_EQ(SHOULD_CLEAR_DATA_MERGE_DATA, delegate().shouldClearData);
176 } 186 }
177 187
178 } // namespace 188 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698