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

Side by Side Diff: chrome/browser/safe_browsing/client_side_detection_service_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: Rebase and address comments 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/client_side_detection_service.h"
6
5 #include <stdint.h> 7 #include <stdint.h>
6 8
7 #include <map> 9 #include <map>
10 #include <memory>
8 #include <queue> 11 #include <queue>
9 #include <string> 12 #include <string>
10 13
11 #include "base/bind.h" 14 #include "base/bind.h"
12 #include "base/callback.h" 15 #include "base/callback.h"
13 #include "base/logging.h" 16 #include "base/logging.h"
14 #include "base/macros.h" 17 #include "base/macros.h"
15 #include "base/memory/scoped_ptr.h"
16 #include "base/message_loop/message_loop.h" 18 #include "base/message_loop/message_loop.h"
17 #include "base/metrics/field_trial.h" 19 #include "base/metrics/field_trial.h"
18 #include "base/strings/string_number_conversions.h" 20 #include "base/strings/string_number_conversions.h"
19 #include "base/time/time.h" 21 #include "base/time/time.h"
20 #include "chrome/browser/safe_browsing/client_side_detection_service.h"
21 #include "chrome/common/safe_browsing/client_model.pb.h" 22 #include "chrome/common/safe_browsing/client_model.pb.h"
22 #include "chrome/common/safe_browsing/csd.pb.h" 23 #include "chrome/common/safe_browsing/csd.pb.h"
23 #include "components/variations/variations_associated_data.h" 24 #include "components/variations/variations_associated_data.h"
24 #include "content/public/test/test_browser_thread.h" 25 #include "content/public/test/test_browser_thread.h"
25 #include "crypto/sha2.h" 26 #include "crypto/sha2.h"
26 #include "net/http/http_status_code.h" 27 #include "net/http/http_status_code.h"
27 #include "net/url_request/test_url_fetcher_factory.h" 28 #include "net/url_request/test_url_fetcher_factory.h"
28 #include "net/url_request/url_request_status.h" 29 #include "net/url_request/url_request_status.h"
29 #include "testing/gmock/include/gmock/gmock.h" 30 #include "testing/gmock/include/gmock/gmock.h"
30 #include "testing/gtest/include/gtest/gtest.h" 31 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 request, 92 request,
92 false, 93 false,
93 base::Bind(&ClientSideDetectionServiceTest::SendRequestDone, 94 base::Bind(&ClientSideDetectionServiceTest::SendRequestDone,
94 base::Unretained(this))); 95 base::Unretained(this)));
95 phishing_url_ = phishing_url; 96 phishing_url_ = phishing_url;
96 msg_loop_.Run(); // Waits until callback is called. 97 msg_loop_.Run(); // Waits until callback is called.
97 return is_phishing_; 98 return is_phishing_;
98 } 99 }
99 100
100 bool SendClientReportMalwareRequest(const GURL& url) { 101 bool SendClientReportMalwareRequest(const GURL& url) {
101 scoped_ptr<ClientMalwareRequest> request(new ClientMalwareRequest()); 102 std::unique_ptr<ClientMalwareRequest> request(new ClientMalwareRequest());
102 request->set_url(url.spec()); 103 request->set_url(url.spec());
103 csd_service_->SendClientReportMalwareRequest( 104 csd_service_->SendClientReportMalwareRequest(
104 request.release(), 105 request.release(),
105 base::Bind(&ClientSideDetectionServiceTest::SendMalwareRequestDone, 106 base::Bind(&ClientSideDetectionServiceTest::SendMalwareRequestDone,
106 base::Unretained(this))); 107 base::Unretained(this)));
107 phishing_url_ = url; 108 phishing_url_ = url;
108 msg_loop_.Run(); // Waits until callback is called. 109 msg_loop_.Run(); // Waits until callback is called.
109 return is_malware_; 110 return is_malware_;
110 } 111 }
111 112
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 request->add_non_model_feature_map(); 225 request->add_non_model_feature_map();
225 feature->set_name(name); 226 feature->set_name(name);
226 feature->set_value(value); 227 feature->set_value(value);
227 } 228 }
228 229
229 void CheckConfirmedMalwareUrl(GURL url) { 230 void CheckConfirmedMalwareUrl(GURL url) {
230 ASSERT_EQ(confirmed_malware_url_, url); 231 ASSERT_EQ(confirmed_malware_url_, url);
231 } 232 }
232 233
233 protected: 234 protected:
234 scoped_ptr<ClientSideDetectionService> csd_service_; 235 std::unique_ptr<ClientSideDetectionService> csd_service_;
235 scoped_ptr<net::FakeURLFetcherFactory> factory_; 236 std::unique_ptr<net::FakeURLFetcherFactory> factory_;
236 base::MessageLoop msg_loop_; 237 base::MessageLoop msg_loop_;
237 238
238 private: 239 private:
239 void SendRequestDone(GURL phishing_url, bool is_phishing) { 240 void SendRequestDone(GURL phishing_url, bool is_phishing) {
240 ASSERT_EQ(phishing_url, phishing_url_); 241 ASSERT_EQ(phishing_url, phishing_url_);
241 is_phishing_ = is_phishing; 242 is_phishing_ = is_phishing;
242 msg_loop_.QuitWhenIdle(); 243 msg_loop_.QuitWhenIdle();
243 } 244 }
244 245
245 void SendMalwareRequestDone(GURL original_url, GURL malware_url, 246 void SendMalwareRequestDone(GURL original_url, GURL malware_url,
246 bool is_malware) { 247 bool is_malware) {
247 ASSERT_EQ(phishing_url_, original_url); 248 ASSERT_EQ(phishing_url_, original_url);
248 confirmed_malware_url_ = malware_url; 249 confirmed_malware_url_ = malware_url;
249 is_malware_ = is_malware; 250 is_malware_ = is_malware;
250 msg_loop_.QuitWhenIdle(); 251 msg_loop_.QuitWhenIdle();
251 } 252 }
252 253
253 scoped_ptr<content::TestBrowserThread> browser_thread_; 254 std::unique_ptr<content::TestBrowserThread> browser_thread_;
254 scoped_ptr<content::TestBrowserThread> file_thread_; 255 std::unique_ptr<content::TestBrowserThread> file_thread_;
255 scoped_ptr<base::FieldTrialList> field_trials_; 256 std::unique_ptr<base::FieldTrialList> field_trials_;
256 257
257 GURL phishing_url_; 258 GURL phishing_url_;
258 GURL confirmed_malware_url_; 259 GURL confirmed_malware_url_;
259 bool is_phishing_; 260 bool is_phishing_;
260 bool is_malware_; 261 bool is_malware_;
261 }; 262 };
262 263
263 264
264 TEST_F(ClientSideDetectionServiceTest, ServiceObjectDeletedBeforeCallbackDone) { 265 TEST_F(ClientSideDetectionServiceTest, ServiceObjectDeletedBeforeCallbackDone) {
265 SetModelFetchResponses(); 266 SetModelFetchResponses();
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
480 481
481 // Check that disabling again doesn't request the model. 482 // Check that disabling again doesn't request the model.
482 csd_service_->SetEnabledAndRefreshState(false); 483 csd_service_->SetEnabledAndRefreshState(false);
483 // No calls expected. 484 // No calls expected.
484 msg_loop_.RunUntilIdle(); 485 msg_loop_.RunUntilIdle();
485 Mock::VerifyAndClearExpectations(service); 486 Mock::VerifyAndClearExpectations(service);
486 Mock::VerifyAndClearExpectations(loader_1); 487 Mock::VerifyAndClearExpectations(loader_1);
487 Mock::VerifyAndClearExpectations(loader_2); 488 Mock::VerifyAndClearExpectations(loader_2);
488 } 489 }
489 } // namespace safe_browsing 490 } // namespace safe_browsing
OLDNEW
« no previous file with comments | « chrome/browser/safe_browsing/client_side_detection_service.cc ('k') | chrome/browser/safe_browsing/client_side_model_loader.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698