| OLD | NEW |
| 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/download_protection_service.h" | 5 #include "chrome/browser/safe_browsing/download_protection_service.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <map> | 10 #include <map> |
| (...skipping 16 matching lines...) Expand all Loading... |
| 27 #include "base/single_thread_task_runner.h" | 27 #include "base/single_thread_task_runner.h" |
| 28 #include "base/strings/string_number_conversions.h" | 28 #include "base/strings/string_number_conversions.h" |
| 29 #include "base/threading/sequenced_worker_pool.h" | 29 #include "base/threading/sequenced_worker_pool.h" |
| 30 #include "base/threading/thread_task_runner_handle.h" | 30 #include "base/threading/thread_task_runner_handle.h" |
| 31 #include "chrome/browser/history/history_service_factory.h" | 31 #include "chrome/browser/history/history_service_factory.h" |
| 32 #include "chrome/browser/safe_browsing/download_feedback_service.h" | 32 #include "chrome/browser/safe_browsing/download_feedback_service.h" |
| 33 #include "chrome/browser/safe_browsing/incident_reporting/incident_reporting_ser
vice.h" | 33 #include "chrome/browser/safe_browsing/incident_reporting/incident_reporting_ser
vice.h" |
| 34 #include "chrome/browser/safe_browsing/local_database_manager.h" | 34 #include "chrome/browser/safe_browsing/local_database_manager.h" |
| 35 #include "chrome/browser/safe_browsing/safe_browsing_service.h" | 35 #include "chrome/browser/safe_browsing/safe_browsing_service.h" |
| 36 #include "chrome/common/chrome_switches.h" | 36 #include "chrome/common/chrome_switches.h" |
| 37 #include "chrome/common/pref_names.h" | |
| 38 #include "chrome/common/safe_browsing/binary_feature_extractor.h" | 37 #include "chrome/common/safe_browsing/binary_feature_extractor.h" |
| 39 #include "chrome/common/safe_browsing/csd.pb.h" | 38 #include "chrome/common/safe_browsing/csd.pb.h" |
| 40 #include "chrome/common/safe_browsing/file_type_policies_test_util.h" | 39 #include "chrome/common/safe_browsing/file_type_policies_test_util.h" |
| 41 #include "chrome/test/base/testing_profile.h" | 40 #include "chrome/test/base/testing_profile.h" |
| 42 #include "components/history/core/browser/history_service.h" | 41 #include "components/history/core/browser/history_service.h" |
| 43 #include "components/prefs/pref_service.h" | 42 #include "components/prefs/pref_service.h" |
| 44 #include "components/safe_browsing_db/database_manager.h" | 43 #include "components/safe_browsing_db/database_manager.h" |
| 44 #include "components/safe_browsing_db/safe_browsing_prefs.h" |
| 45 #include "components/safe_browsing_db/test_database_manager.h" | 45 #include "components/safe_browsing_db/test_database_manager.h" |
| 46 #include "content/public/browser/download_danger_type.h" | 46 #include "content/public/browser/download_danger_type.h" |
| 47 #include "content/public/browser/page_navigator.h" | 47 #include "content/public/browser/page_navigator.h" |
| 48 #include "content/public/test/mock_download_item.h" | 48 #include "content/public/test/mock_download_item.h" |
| 49 #include "content/public/test/test_browser_thread_bundle.h" | 49 #include "content/public/test/test_browser_thread_bundle.h" |
| 50 #include "content/public/test/test_utils.h" | 50 #include "content/public/test/test_utils.h" |
| 51 #include "net/base/url_util.h" | 51 #include "net/base/url_util.h" |
| 52 #include "net/cert/x509_certificate.h" | 52 #include "net/cert/x509_certificate.h" |
| 53 #include "net/http/http_status_code.h" | 53 #include "net/http/http_status_code.h" |
| 54 #include "net/url_request/test_url_fetcher_factory.h" | 54 #include "net/url_request/test_url_fetcher_factory.h" |
| (...skipping 456 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 511 if (!has_result_) | 511 if (!has_result_) |
| 512 return testing::AssertionFailure() << "No result"; | 512 return testing::AssertionFailure() << "No result"; |
| 513 has_result_ = false; | 513 has_result_ = false; |
| 514 return result_ == expected ? | 514 return result_ == expected ? |
| 515 testing::AssertionSuccess() : | 515 testing::AssertionSuccess() : |
| 516 testing::AssertionFailure() << "Expected " << expected << | 516 testing::AssertionFailure() << "Expected " << expected << |
| 517 ", got " << result_; | 517 ", got " << result_; |
| 518 } | 518 } |
| 519 | 519 |
| 520 void SetExtendedReportingPreference(bool is_extended_reporting) { | 520 void SetExtendedReportingPreference(bool is_extended_reporting) { |
| 521 profile_->GetPrefs()->SetBoolean( | 521 profile_->GetPrefs()->SetBoolean(GetExtendedReportingPrefName(), |
| 522 prefs::kSafeBrowsingExtendedReportingEnabled, | 522 is_extended_reporting); |
| 523 is_extended_reporting); | |
| 524 } | 523 } |
| 525 | 524 |
| 526 // Check scenarios where we should/shouldn't send a report for | 525 // Check scenarios where we should/shouldn't send a report for |
| 527 // a corrupted zip. | 526 // a corrupted zip. |
| 528 void CheckClientDownloadReportCorruptArchive(ArchiveType type, | 527 void CheckClientDownloadReportCorruptArchive(ArchiveType type, |
| 529 bool is_extended_reporting, | 528 bool is_extended_reporting, |
| 530 bool is_incognito); | 529 bool is_incognito); |
| 531 | 530 |
| 532 protected: | 531 protected: |
| 533 // This will effectivly mask the global Singleton while this is in scope. | 532 // This will effectivly mask the global Singleton while this is in scope. |
| (...skipping 1830 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2364 &item, base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, | 2363 &item, base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, |
| 2365 base::Unretained(this), run_loop.QuitClosure())); | 2364 base::Unretained(this), run_loop.QuitClosure())); |
| 2366 run_loop.Run(); | 2365 run_loop.Run(); |
| 2367 | 2366 |
| 2368 EXPECT_FALSE(HasClientDownloadRequest()); | 2367 EXPECT_FALSE(HasClientDownloadRequest()); |
| 2369 // Overriden by flag: | 2368 // Overriden by flag: |
| 2370 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); | 2369 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); |
| 2371 } | 2370 } |
| 2372 | 2371 |
| 2373 } // namespace safe_browsing | 2372 } // namespace safe_browsing |
| OLD | NEW |