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

Side by Side Diff: chrome/renderer/safe_browsing/phishing_classifier_browsertest.cc

Issue 8573018: Convert to base::Callback in safe_browsing client-side-detection code. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Don't call Run() on null callbacks. Created 9 years, 1 month 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 // Note that although this is not a "browser" test, it runs as part of 5 // Note that although this is not a "browser" test, it runs as part of
6 // browser_tests. This is because WebKit does not work properly if it is 6 // browser_tests. This is because WebKit does not work properly if it is
7 // shutdown and re-initialized. Since browser_tests runs each test in a 7 // shutdown and re-initialized. Since browser_tests runs each test in a
8 // new process, this avoids the problem. 8 // new process, this avoids the problem.
9 9
10 #include "chrome/renderer/safe_browsing/phishing_classifier.h" 10 #include "chrome/renderer/safe_browsing/phishing_classifier.h"
11 11
12 #include <string> 12 #include <string>
13 13
14 #include "base/bind.h"
14 #include "base/memory/scoped_ptr.h" 15 #include "base/memory/scoped_ptr.h"
15 #include "base/string16.h" 16 #include "base/string16.h"
16 #include "base/utf_string_conversions.h" 17 #include "base/utf_string_conversions.h"
17 #include "chrome/common/safe_browsing/client_model.pb.h" 18 #include "chrome/common/safe_browsing/client_model.pb.h"
18 #include "chrome/common/safe_browsing/csd.pb.h" 19 #include "chrome/common/safe_browsing/csd.pb.h"
19 #include "chrome/renderer/safe_browsing/features.h" 20 #include "chrome/renderer/safe_browsing/features.h"
20 #include "chrome/renderer/safe_browsing/mock_feature_extractor_clock.h" 21 #include "chrome/renderer/safe_browsing/mock_feature_extractor_clock.h"
21 #include "chrome/renderer/safe_browsing/murmurhash3_util.h" 22 #include "chrome/renderer/safe_browsing/murmurhash3_util.h"
22 #include "chrome/renderer/safe_browsing/scorer.h" 23 #include "chrome/renderer/safe_browsing/scorer.h"
23 #include "content/test/render_view_fake_resources_test.h" 24 #include "content/test/render_view_fake_resources_test.h"
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 // false otherwise. 93 // false otherwise.
93 bool RunPhishingClassifier(const string16* page_text, 94 bool RunPhishingClassifier(const string16* page_text,
94 float* phishy_score, 95 float* phishy_score,
95 FeatureMap* features) { 96 FeatureMap* features) {
96 verdict_.Clear(); 97 verdict_.Clear();
97 *phishy_score = PhishingClassifier::kInvalidScore; 98 *phishy_score = PhishingClassifier::kInvalidScore;
98 features->Clear(); 99 features->Clear();
99 100
100 classifier_->BeginClassification( 101 classifier_->BeginClassification(
101 page_text, 102 page_text,
102 NewCallback(this, &PhishingClassifierTest::ClassificationFinished)); 103 base::Bind(&PhishingClassifierTest::ClassificationFinished,
104 base::Unretained(this)));
103 message_loop_.Run(); 105 message_loop_.Run();
104 106
105 *phishy_score = verdict_.client_score(); 107 *phishy_score = verdict_.client_score();
106 for (int i = 0; i < verdict_.feature_map_size(); ++i) { 108 for (int i = 0; i < verdict_.feature_map_size(); ++i) {
107 features->AddRealFeature(verdict_.feature_map(i).name(), 109 features->AddRealFeature(verdict_.feature_map(i).name(),
108 verdict_.feature_map(i).value()); 110 verdict_.feature_map(i).value());
109 } 111 }
110 return verdict_.is_phishing(); 112 return verdict_.is_phishing();
111 } 113 }
112 114
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
200 // Now set the scorer. 202 // Now set the scorer.
201 classifier_->set_phishing_scorer(scorer_.get()); 203 classifier_->set_phishing_scorer(scorer_.get());
202 EXPECT_TRUE(classifier_->is_ready()); 204 EXPECT_TRUE(classifier_->is_ready());
203 205
204 // Set a NULL scorer, which turns detection back off. 206 // Set a NULL scorer, which turns detection back off.
205 classifier_->set_phishing_scorer(NULL); 207 classifier_->set_phishing_scorer(NULL);
206 EXPECT_FALSE(classifier_->is_ready()); 208 EXPECT_FALSE(classifier_->is_ready());
207 } 209 }
208 210
209 } // namespace safe_browsing 211 } // namespace safe_browsing
OLDNEW
« no previous file with comments | « chrome/renderer/safe_browsing/phishing_classifier.cc ('k') | chrome/renderer/safe_browsing/phishing_classifier_delegate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698