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

Side by Side Diff: chrome/browser/safe_browsing/incident_reporting/extension_data_collection_unittest.cc

Issue 1870003002: Convert //chrome/browser/safe_browsing from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 #include "chrome/browser/safe_browsing/incident_reporting/extension_data_collect ion.h" 5 #include "chrome/browser/safe_browsing/incident_reporting/extension_data_collect ion.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/memory/ptr_util.h"
10 #include "base/strings/string_number_conversions.h" 11 #include "base/strings/string_number_conversions.h"
11 #include "base/strings/utf_string_conversions.h" 12 #include "base/strings/utf_string_conversions.h"
12 #include "build/build_config.h" 13 #include "build/build_config.h"
13 #include "chrome/browser/extensions/extension_service.h" 14 #include "chrome/browser/extensions/extension_service.h"
14 #include "chrome/browser/extensions/install_signer.h" 15 #include "chrome/browser/extensions/install_signer.h"
15 #include "chrome/browser/extensions/test_extension_system.h" 16 #include "chrome/browser/extensions/test_extension_system.h"
16 #include "chrome/browser/prefs/browser_prefs.h" 17 #include "chrome/browser/prefs/browser_prefs.h"
17 #include "chrome/browser/profiles/profile_manager.h" 18 #include "chrome/browser/profiles/profile_manager.h"
18 #include "chrome/common/pref_names.h" 19 #include "chrome/common/pref_names.h"
19 #include "chrome/common/safe_browsing/csd.pb.h" 20 #include "chrome/common/safe_browsing/csd.pb.h"
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 new TestingProfileManager(TestingBrowserProcess::GetGlobal())); 132 new TestingProfileManager(TestingBrowserProcess::GetGlobal()));
132 ASSERT_TRUE(profile_manager_->SetUp()); 133 ASSERT_TRUE(profile_manager_->SetUp());
133 } 134 }
134 135
135 void TearDown() override { 136 void TearDown() override {
136 profile_manager_.reset(); 137 profile_manager_.reset();
137 TestingBrowserProcess::DeleteInstance(); 138 TestingBrowserProcess::DeleteInstance();
138 testing::Test::TearDown(); 139 testing::Test::TearDown();
139 } 140 }
140 141
141 scoped_ptr<ExtensionTestingProfile> CreateProfile( 142 std::unique_ptr<ExtensionTestingProfile> CreateProfile(
142 SafeBrowsingDisposition safe_browsing_opt_in) { 143 SafeBrowsingDisposition safe_browsing_opt_in) {
143 std::string profile_name("profile"); 144 std::string profile_name("profile");
144 profile_name.append(base::IntToString(++profile_number_)); 145 profile_name.append(base::IntToString(++profile_number_));
145 146
146 // Create prefs for the profile with safe browsing enabled or not. 147 // Create prefs for the profile with safe browsing enabled or not.
147 scoped_ptr<syncable_prefs::TestingPrefServiceSyncable> prefs( 148 std::unique_ptr<syncable_prefs::TestingPrefServiceSyncable> prefs(
148 new syncable_prefs::TestingPrefServiceSyncable); 149 new syncable_prefs::TestingPrefServiceSyncable);
149 chrome::RegisterUserProfilePrefs(prefs->registry()); 150 chrome::RegisterUserProfilePrefs(prefs->registry());
150 prefs->SetBoolean(prefs::kSafeBrowsingEnabled, 151 prefs->SetBoolean(prefs::kSafeBrowsingEnabled,
151 safe_browsing_opt_in == SAFE_BROWSING_OPT_IN); 152 safe_browsing_opt_in == SAFE_BROWSING_OPT_IN);
152 prefs->SetBoolean(prefs::kSafeBrowsingExtendedReportingEnabled, 153 prefs->SetBoolean(prefs::kSafeBrowsingExtendedReportingEnabled,
153 safe_browsing_opt_in == SAFE_BROWSING_OPT_IN); 154 safe_browsing_opt_in == SAFE_BROWSING_OPT_IN);
154 TestingProfile* profile = profile_manager_->CreateTestingProfile( 155 TestingProfile* profile = profile_manager_->CreateTestingProfile(
155 profile_name, std::move(prefs), 156 profile_name, std::move(prefs),
156 base::UTF8ToUTF16(profile_name), // user_name 157 base::UTF8ToUTF16(profile_name), // user_name
157 0, // avatar_id 158 0, // avatar_id
158 std::string(), // supervised_user_id 159 std::string(), // supervised_user_id
159 TestingProfile::TestingFactories()); 160 TestingProfile::TestingFactories());
160 161
161 return make_scoped_ptr(new ExtensionTestingProfile(profile)); 162 return base::WrapUnique(new ExtensionTestingProfile(profile));
162 } 163 }
163 164
164 content::TestBrowserThreadBundle browser_thread_bundle_; 165 content::TestBrowserThreadBundle browser_thread_bundle_;
165 scoped_ptr<TestingProfileManager> profile_manager_; 166 std::unique_ptr<TestingProfileManager> profile_manager_;
166 167
167 private: 168 private:
168 int profile_number_; 169 int profile_number_;
169 170
170 #if defined OS_CHROMEOS 171 #if defined OS_CHROMEOS
171 chromeos::ScopedTestDeviceSettingsService test_device_settings_service_; 172 chromeos::ScopedTestDeviceSettingsService test_device_settings_service_;
172 chromeos::ScopedTestCrosSettings test_cros_settings_; 173 chromeos::ScopedTestCrosSettings test_cros_settings_;
173 chromeos::ScopedTestUserManager test_user_manager_; 174 chromeos::ScopedTestUserManager test_user_manager_;
174 #endif 175 #endif
175 }; 176 };
176 177
177 TEST_F(ExtensionDataCollectionTest, CollectExtensionDataNoExtensions) { 178 TEST_F(ExtensionDataCollectionTest, CollectExtensionDataNoExtensions) {
178 scoped_ptr<ExtensionTestingProfile> profile = 179 std::unique_ptr<ExtensionTestingProfile> profile =
179 CreateProfile(SAFE_BROWSING_OPT_IN); 180 CreateProfile(SAFE_BROWSING_OPT_IN);
180 181
181 ClientIncidentReport_ExtensionData data; 182 ClientIncidentReport_ExtensionData data;
182 CollectExtensionData(&data); 183 CollectExtensionData(&data);
183 184
184 ASSERT_FALSE(data.has_last_installed_extension()); 185 ASSERT_FALSE(data.has_last_installed_extension());
185 } 186 }
186 187
187 TEST_F(ExtensionDataCollectionTest, CollectExtensionDataNoSafeBrowsing) { 188 TEST_F(ExtensionDataCollectionTest, CollectExtensionDataNoSafeBrowsing) {
188 scoped_ptr<ExtensionTestingProfile> profile = 189 std::unique_ptr<ExtensionTestingProfile> profile =
189 CreateProfile(SAFE_BROWSING_OPT_OUT); 190 CreateProfile(SAFE_BROWSING_OPT_OUT);
190 profile->AddExtension(); 191 profile->AddExtension();
191 192
192 ClientIncidentReport_ExtensionData data; 193 ClientIncidentReport_ExtensionData data;
193 CollectExtensionData(&data); 194 CollectExtensionData(&data);
194 195
195 ASSERT_FALSE(data.has_last_installed_extension()); 196 ASSERT_FALSE(data.has_last_installed_extension());
196 } 197 }
197 198
198 TEST_F(ExtensionDataCollectionTest, CollectExtensionDataWithExtension) { 199 TEST_F(ExtensionDataCollectionTest, CollectExtensionDataWithExtension) {
199 std::string extension_id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 200 std::string extension_id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
200 std::string extension_name = "my_test_extension"; 201 std::string extension_name = "my_test_extension";
201 base::Time install_time = base::Time::Now(); 202 base::Time install_time = base::Time::Now();
202 std::string version = "1.4.2"; 203 std::string version = "1.4.2";
203 std::string description = "Test Extension"; 204 std::string description = "Test Extension";
204 std::string update_url = "https://www.chromium.org"; 205 std::string update_url = "https://www.chromium.org";
205 int state = extensions::Extension::State::ENABLED; 206 int state = extensions::Extension::State::ENABLED;
206 207
207 scoped_ptr<ExtensionTestingProfile> profile = 208 std::unique_ptr<ExtensionTestingProfile> profile =
208 CreateProfile(SAFE_BROWSING_OPT_IN); 209 CreateProfile(SAFE_BROWSING_OPT_IN);
209 profile->AddExtension(extension_id, extension_name, install_time, version, 210 profile->AddExtension(extension_id, extension_name, install_time, version,
210 description, update_url, state); 211 description, update_url, state);
211 212
212 extensions::ExtensionIdSet valid_ids; 213 extensions::ExtensionIdSet valid_ids;
213 extensions::ExtensionIdSet invalid_ids; 214 extensions::ExtensionIdSet invalid_ids;
214 invalid_ids.insert(extension_id); 215 invalid_ids.insert(extension_id);
215 extensions::InstallSignature signature = {}; 216 extensions::InstallSignature signature = {};
216 signature.ids = valid_ids; 217 signature.ids = valid_ids;
217 signature.invalid_ids = invalid_ids; 218 signature.invalid_ids = invalid_ids;
(...skipping 20 matching lines...) Expand all
238 "manifest_version\":2,\"name\":\"my_test_extension\",\"update_url\":\"" 239 "manifest_version\":2,\"name\":\"my_test_extension\",\"update_url\":\""
239 "https://www.chromium.org\",\"version\":\"1.4.2\"}"; 240 "https://www.chromium.org\",\"version\":\"1.4.2\"}";
240 ASSERT_EQ(extension_info.manifest(), expected_manifest); 241 ASSERT_EQ(extension_info.manifest(), expected_manifest);
241 } 242 }
242 243
243 TEST_F(ExtensionDataCollectionTest, CollectsLastInstalledExtension) { 244 TEST_F(ExtensionDataCollectionTest, CollectsLastInstalledExtension) {
244 std::string extension_id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 245 std::string extension_id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
245 std::string extension_name = "extension_2"; 246 std::string extension_name = "extension_2";
246 base::Time install_time = base::Time::Now() - base::TimeDelta::FromMinutes(3); 247 base::Time install_time = base::Time::Now() - base::TimeDelta::FromMinutes(3);
247 248
248 scoped_ptr<ExtensionTestingProfile> profile = 249 std::unique_ptr<ExtensionTestingProfile> profile =
249 CreateProfile(SAFE_BROWSING_OPT_IN); 250 CreateProfile(SAFE_BROWSING_OPT_IN);
250 profile->AddExtension("bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", "extension_1", 251 profile->AddExtension("bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", "extension_1",
251 base::Time::Now() - base::TimeDelta::FromDays(2)); 252 base::Time::Now() - base::TimeDelta::FromDays(2));
252 profile->AddExtension(extension_id, extension_name, install_time); 253 profile->AddExtension(extension_id, extension_name, install_time);
253 profile->AddExtension("cccccccccccccccccccccccccccccccc", "extension_3", 254 profile->AddExtension("cccccccccccccccccccccccccccccccc", "extension_3",
254 base::Time::Now() - base::TimeDelta::FromHours(4)); 255 base::Time::Now() - base::TimeDelta::FromHours(4));
255 256
256 ClientIncidentReport_ExtensionData data; 257 ClientIncidentReport_ExtensionData data;
257 CollectExtensionData(&data); 258 CollectExtensionData(&data);
258 259
259 ASSERT_TRUE(data.has_last_installed_extension()); 260 ASSERT_TRUE(data.has_last_installed_extension());
260 ClientIncidentReport_ExtensionData_ExtensionInfo extension_info = 261 ClientIncidentReport_ExtensionData_ExtensionInfo extension_info =
261 data.last_installed_extension(); 262 data.last_installed_extension();
262 263
263 ASSERT_EQ(extension_info.id(), extension_id); 264 ASSERT_EQ(extension_info.id(), extension_id);
264 ASSERT_EQ(extension_info.name(), extension_name); 265 ASSERT_EQ(extension_info.name(), extension_name);
265 ASSERT_EQ(extension_info.install_time_msec(), install_time.ToJavaTime()); 266 ASSERT_EQ(extension_info.install_time_msec(), install_time.ToJavaTime());
266 } 267 }
267 268
268 TEST_F(ExtensionDataCollectionTest, IgnoresExtensionsIfNoSafeBrowsing) { 269 TEST_F(ExtensionDataCollectionTest, IgnoresExtensionsIfNoSafeBrowsing) {
269 std::string extension_id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; 270 std::string extension_id = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
270 std::string extension_name = "extension_2"; 271 std::string extension_name = "extension_2";
271 272
272 scoped_ptr<ExtensionTestingProfile> profile = 273 std::unique_ptr<ExtensionTestingProfile> profile =
273 CreateProfile(SAFE_BROWSING_OPT_IN); 274 CreateProfile(SAFE_BROWSING_OPT_IN);
274 275
275 profile->AddExtension(extension_id, extension_name, 276 profile->AddExtension(extension_id, extension_name,
276 base::Time::Now() - base::TimeDelta::FromDays(3)); 277 base::Time::Now() - base::TimeDelta::FromDays(3));
277 278
278 scoped_ptr<ExtensionTestingProfile> profile_without_safe_browsing = 279 std::unique_ptr<ExtensionTestingProfile> profile_without_safe_browsing =
279 CreateProfile(SAFE_BROWSING_OPT_OUT); 280 CreateProfile(SAFE_BROWSING_OPT_OUT);
280 profile_without_safe_browsing->AddExtension( 281 profile_without_safe_browsing->AddExtension(
281 "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", "extension_1", 282 "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", "extension_1",
282 base::Time::Now() - base::TimeDelta::FromDays(2)); 283 base::Time::Now() - base::TimeDelta::FromDays(2));
283 284
284 ClientIncidentReport_ExtensionData data; 285 ClientIncidentReport_ExtensionData data;
285 CollectExtensionData(&data); 286 CollectExtensionData(&data);
286 287
287 ASSERT_TRUE(data.has_last_installed_extension()); 288 ASSERT_TRUE(data.has_last_installed_extension());
288 ClientIncidentReport_ExtensionData_ExtensionInfo extension_info = 289 ClientIncidentReport_ExtensionData_ExtensionInfo extension_info =
289 data.last_installed_extension(); 290 data.last_installed_extension();
290 291
291 ASSERT_EQ(extension_info.id(), extension_id); 292 ASSERT_EQ(extension_info.id(), extension_id);
292 ASSERT_EQ(extension_info.name(), extension_name); 293 ASSERT_EQ(extension_info.name(), extension_name);
293 } 294 }
294 295
295 } // namespace safe_browsing 296 } // namespace safe_browsing
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698