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

Side by Side Diff: chrome/browser/safe_browsing/safe_browsing_test.cc

Issue 1409163006: Migrating tests to use EmbeddedTestServer (/chrome/browser misc) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 5 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) 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 // This test uses the safebrowsing test server published at 5 // This test uses the safebrowsing test server published at
6 // http://code.google.com/p/google-safe-browsing/ to test the safebrowsing 6 // http://code.google.com/p/google-safe-browsing/ to test the safebrowsing
7 // protocol implemetation. Details of the safebrowsing testing flow is 7 // protocol implemetation. Details of the safebrowsing testing flow is
8 // documented at 8 // documented at
9 // http://code.google.com/p/google-safe-browsing/wiki/ProtocolTesting 9 // http://code.google.com/p/google-safe-browsing/wiki/ProtocolTesting
10 // 10 //
(...skipping 30 matching lines...) Expand all
41 #include "chrome/common/chrome_switches.h" 41 #include "chrome/common/chrome_switches.h"
42 #include "chrome/common/url_constants.h" 42 #include "chrome/common/url_constants.h"
43 #include "chrome/test/base/in_process_browser_test.h" 43 #include "chrome/test/base/in_process_browser_test.h"
44 #include "content/public/browser/browser_context.h" 44 #include "content/public/browser/browser_context.h"
45 #include "content/public/test/test_browser_thread.h" 45 #include "content/public/test/test_browser_thread.h"
46 #include "content/public/test/test_utils.h" 46 #include "content/public/test/test_utils.h"
47 #include "net/base/load_flags.h" 47 #include "net/base/load_flags.h"
48 #include "net/dns/host_resolver.h" 48 #include "net/dns/host_resolver.h"
49 #include "net/log/net_log.h" 49 #include "net/log/net_log.h"
50 #include "net/test/python_utils.h" 50 #include "net/test/python_utils.h"
51 #include "net/test/spawned_test_server/spawned_test_server.h"
51 #include "net/url_request/url_fetcher.h" 52 #include "net/url_request/url_fetcher.h"
52 #include "net/url_request/url_fetcher_delegate.h" 53 #include "net/url_request/url_fetcher_delegate.h"
53 #include "net/url_request/url_request_status.h" 54 #include "net/url_request/url_request_status.h"
54 #include "testing/gtest/include/gtest/gtest.h" 55 #include "testing/gtest/include/gtest/gtest.h"
55 56
56 using content::BrowserThread; 57 using content::BrowserThread;
57 58
58 #ifndef SAFE_BROWSING_DB_LOCAL 59 #ifndef SAFE_BROWSING_DB_LOCAL
59 #error This test requires the SAFE_BROWSING_DB_LOCAL implementation. 60 #error This test requires the SAFE_BROWSING_DB_LOCAL implementation.
60 #endif 61 #endif
(...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 248
248 bool is_update_scheduled() { 249 bool is_update_scheduled() {
249 base::AutoLock l(update_status_mutex_); 250 base::AutoLock l(update_status_mutex_);
250 return is_update_scheduled_; 251 return is_update_scheduled_;
251 } 252 }
252 253
253 scoped_refptr<base::SequencedTaskRunner> SafeBrowsingTaskRunner() { 254 scoped_refptr<base::SequencedTaskRunner> SafeBrowsingTaskRunner() {
254 return local_database_manager()->safe_browsing_task_runner_; 255 return local_database_manager()->safe_browsing_task_runner_;
255 } 256 }
256 257
257 const net::SpawnedTestServer& test_server() const { 258 const net::SpawnedTestServer& spawned_test_server() const {
258 return *test_server_; 259 return *test_server_;
259 } 260 }
260 261
261 protected: 262 protected:
262 bool InitSafeBrowsingService() { 263 bool InitSafeBrowsingService() {
263 safe_browsing_service_ = g_browser_process->safe_browsing_service(); 264 safe_browsing_service_ = g_browser_process->safe_browsing_service();
264 return safe_browsing_service_ != NULL; 265 return safe_browsing_service_ != NULL;
265 } 266 }
266 267
267 void SetUp() override { 268 void SetUp() override {
(...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after
533 safe_browsing_helper->UpdateStatus(); 534 safe_browsing_helper->UpdateStatus();
534 EXPECT_TRUE(is_database_ready()); 535 EXPECT_TRUE(is_database_ready());
535 EXPECT_FALSE(is_update_scheduled()); 536 EXPECT_FALSE(is_update_scheduled());
536 EXPECT_FALSE(last_update().is_null()); 537 EXPECT_FALSE(last_update().is_null());
537 if (last_update() < now) { 538 if (last_update() < now) {
538 // This means no data available anymore. 539 // This means no data available anymore.
539 break; 540 break;
540 } 541 }
541 542
542 // Fetches URLs to verify and waits till server responses with data. 543 // Fetches URLs to verify and waits till server responses with data.
543 EXPECT_EQ(net::URLRequestStatus::SUCCESS, 544 EXPECT_EQ(
544 safe_browsing_helper->FetchUrlsToVerify(test_server(), step)); 545 net::URLRequestStatus::SUCCESS,
546 safe_browsing_helper->FetchUrlsToVerify(spawned_test_server(), step));
545 547
546 std::vector<PhishingUrl> phishing_urls; 548 std::vector<PhishingUrl> phishing_urls;
547 EXPECT_TRUE(ParsePhishingUrls(safe_browsing_helper->response_data(), 549 EXPECT_TRUE(ParsePhishingUrls(safe_browsing_helper->response_data(),
548 &phishing_urls)); 550 &phishing_urls));
549 EXPECT_GT(phishing_urls.size(), 0U); 551 EXPECT_GT(phishing_urls.size(), 0U);
550 for (size_t j = 0; j < phishing_urls.size(); ++j) { 552 for (size_t j = 0; j < phishing_urls.size(); ++j) {
551 // Verifes with server if a URL is a phishing URL and waits till server 553 // Verifes with server if a URL is a phishing URL and waits till server
552 // responses. 554 // responses.
553 safe_browsing_helper->CheckUrl(GURL(phishing_urls[j].url)); 555 safe_browsing_helper->CheckUrl(GURL(phishing_urls[j].url));
554 if (phishing_urls[j].is_phishing) { 556 if (phishing_urls[j].is_phishing) {
555 EXPECT_TRUE(is_checked_url_in_db()) 557 EXPECT_TRUE(is_checked_url_in_db())
556 << phishing_urls[j].url 558 << phishing_urls[j].url
557 << " is_phishing: " << phishing_urls[j].is_phishing 559 << " is_phishing: " << phishing_urls[j].is_phishing
558 << " test step: " << step; 560 << " test step: " << step;
559 EXPECT_FALSE(is_checked_url_safe()) 561 EXPECT_FALSE(is_checked_url_safe())
560 << phishing_urls[j].url 562 << phishing_urls[j].url
561 << " is_phishing: " << phishing_urls[j].is_phishing 563 << " is_phishing: " << phishing_urls[j].is_phishing
562 << " test step: " << step; 564 << " test step: " << step;
563 } else { 565 } else {
564 EXPECT_TRUE(is_checked_url_safe()) 566 EXPECT_TRUE(is_checked_url_safe())
565 << phishing_urls[j].url 567 << phishing_urls[j].url
566 << " is_phishing: " << phishing_urls[j].is_phishing 568 << " is_phishing: " << phishing_urls[j].is_phishing
567 << " test step: " << step; 569 << " test step: " << step;
568 } 570 }
569 } 571 }
570 // TODO(lzheng): We should verify the fetched database with local 572 // TODO(lzheng): We should verify the fetched database with local
571 // database to make sure they match. 573 // database to make sure they match.
572 EXPECT_EQ(net::URLRequestStatus::SUCCESS, 574 EXPECT_EQ(
573 safe_browsing_helper->FetchDBToVerify(test_server(), step)); 575 net::URLRequestStatus::SUCCESS,
576 safe_browsing_helper->FetchDBToVerify(spawned_test_server(), step));
574 EXPECT_GT(safe_browsing_helper->response_data().size(), 0U); 577 EXPECT_GT(safe_browsing_helper->response_data().size(), 0U);
575 last_step = step; 578 last_step = step;
576 } 579 }
577 580
578 // Verifies with server if test is done and waits till server responses. 581 // Verifies with server if test is done and waits till server responses.
579 EXPECT_EQ(net::URLRequestStatus::SUCCESS, 582 EXPECT_EQ(net::URLRequestStatus::SUCCESS,
580 safe_browsing_helper->VerifyTestComplete(test_server(), last_step)); 583 safe_browsing_helper->VerifyTestComplete(spawned_test_server(),
584 last_step));
581 EXPECT_EQ("yes", safe_browsing_helper->response_data()); 585 EXPECT_EQ("yes", safe_browsing_helper->response_data());
582 } 586 }
583 587
584 } // namespace safe_browsing 588 } // namespace safe_browsing
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698