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 #include <map> | 9 #include <map> |
10 #include <string> | 10 #include <string> |
(...skipping 628 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
639 // Set sample rate to 0 to prevent sampling. | 639 // Set sample rate to 0 to prevent sampling. |
640 SetWhitelistedDownloadSampleRate(0); | 640 SetWhitelistedDownloadSampleRate(0); |
641 download_service_->CheckClientDownload( | 641 download_service_->CheckClientDownload( |
642 &item, | 642 &item, |
643 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, | 643 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, |
644 base::Unretained(this))); | 644 base::Unretained(this))); |
645 MessageLoop::current()->Run(); | 645 MessageLoop::current()->Run(); |
646 | 646 |
647 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); | 647 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); |
648 EXPECT_TRUE(HasClientDownloadRequest()); | 648 EXPECT_TRUE(HasClientDownloadRequest()); |
| 649 EXPECT_FALSE(GetClientDownloadRequest()->skipped_url_whitelist()); |
| 650 EXPECT_FALSE(GetClientDownloadRequest()->skipped_certificate_whitelist()); |
649 ClearClientDownloadRequest(); | 651 ClearClientDownloadRequest(); |
650 | 652 |
651 // Check that the referrer is not matched against the whitelist. | 653 // Check that the referrer is not matched against the whitelist. |
652 referrer_ = GURL("http://www.google.com/"); | 654 referrer_ = GURL("http://www.google.com/"); |
653 download_service_->CheckClientDownload( | 655 download_service_->CheckClientDownload( |
654 &item, | 656 &item, |
655 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, | 657 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, |
656 base::Unretained(this))); | 658 base::Unretained(this))); |
657 MessageLoop::current()->Run(); | 659 MessageLoop::current()->Run(); |
658 | 660 |
659 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); | 661 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); |
660 EXPECT_TRUE(HasClientDownloadRequest()); | 662 EXPECT_TRUE(HasClientDownloadRequest()); |
| 663 EXPECT_FALSE(GetClientDownloadRequest()->skipped_url_whitelist()); |
| 664 EXPECT_FALSE(GetClientDownloadRequest()->skipped_certificate_whitelist()); |
661 ClearClientDownloadRequest(); | 665 ClearClientDownloadRequest(); |
662 | 666 |
663 // Redirect from a site shouldn't be checked either. | 667 // Redirect from a site shouldn't be checked either. |
664 url_chain_.insert(url_chain_.begin(), GURL("http://www.google.com/redirect")); | 668 url_chain_.insert(url_chain_.begin(), GURL("http://www.google.com/redirect")); |
665 download_service_->CheckClientDownload( | 669 download_service_->CheckClientDownload( |
666 &item, | 670 &item, |
667 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, | 671 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, |
668 base::Unretained(this))); | 672 base::Unretained(this))); |
669 MessageLoop::current()->Run(); | 673 MessageLoop::current()->Run(); |
670 | 674 |
671 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); | 675 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); |
672 EXPECT_TRUE(HasClientDownloadRequest()); | 676 EXPECT_TRUE(HasClientDownloadRequest()); |
| 677 EXPECT_FALSE(GetClientDownloadRequest()->skipped_url_whitelist()); |
| 678 EXPECT_FALSE(GetClientDownloadRequest()->skipped_certificate_whitelist()); |
673 ClearClientDownloadRequest(); | 679 ClearClientDownloadRequest(); |
674 | 680 |
675 // Only if the final url is whitelisted should it be SAFE. | 681 // Only if the final url is whitelisted should it be SAFE. |
676 url_chain_.push_back(GURL("http://www.google.com/a.exe")); | 682 url_chain_.push_back(GURL("http://www.google.com/a.exe")); |
677 download_service_->CheckClientDownload( | 683 download_service_->CheckClientDownload( |
678 &item, | 684 &item, |
679 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, | 685 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, |
680 base::Unretained(this))); | 686 base::Unretained(this))); |
681 MessageLoop::current()->Run(); | 687 MessageLoop::current()->Run(); |
682 EXPECT_TRUE(IsResult(DownloadProtectionService::SAFE)); | 688 EXPECT_TRUE(IsResult(DownloadProtectionService::SAFE)); |
(...skipping 1221 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1904 &item, base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, | 1910 &item, base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, |
1905 base::Unretained(this))); | 1911 base::Unretained(this))); |
1906 MessageLoop::current()->Run(); | 1912 MessageLoop::current()->Run(); |
1907 | 1913 |
1908 EXPECT_FALSE(HasClientDownloadRequest()); | 1914 EXPECT_FALSE(HasClientDownloadRequest()); |
1909 // Overriden by flag: | 1915 // Overriden by flag: |
1910 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); | 1916 EXPECT_TRUE(IsResult(DownloadProtectionService::DANGEROUS)); |
1911 } | 1917 } |
1912 | 1918 |
1913 } // namespace safe_browsing | 1919 } // namespace safe_browsing |
OLD | NEW |