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

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

Issue 512513002: Safebrowsing: send enhanced download protection pings on OSX. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: always return false for IsSupportedDownload Created 6 years, 3 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 | Annotate | Revision Log
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/download_protection_service.h" 5 #include "chrome/browser/safe_browsing/download_protection_service.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 9
10 #include "base/base_paths.h" 10 #include "base/base_paths.h"
(...skipping 492 matching lines...) Expand 10 before | Expand all | Expand 10 after
503 EXPECT_TRUE(IsResult(DownloadProtectionService::UNKNOWN)); 503 EXPECT_TRUE(IsResult(DownloadProtectionService::UNKNOWN));
504 #endif 504 #endif
505 505
506 // Only if the final url is whitelisted should it be SAFE. 506 // Only if the final url is whitelisted should it be SAFE.
507 url_chain.push_back(GURL("http://www.google.com/a.exe")); 507 url_chain.push_back(GURL("http://www.google.com/a.exe"));
508 download_service_->CheckClientDownload( 508 download_service_->CheckClientDownload(
509 &item, 509 &item,
510 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, 510 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback,
511 base::Unretained(this))); 511 base::Unretained(this)));
512 MessageLoop::current()->Run(); 512 MessageLoop::current()->Run();
513 #if defined(OS_MACOSX)
514 EXPECT_TRUE(IsResult(DownloadProtectionService::UNKNOWN));
515 #else
513 EXPECT_TRUE(IsResult(DownloadProtectionService::SAFE)); 516 EXPECT_TRUE(IsResult(DownloadProtectionService::SAFE));
517 #endif
514 } 518 }
515 519
516 TEST_F(DownloadProtectionServiceTest, CheckClientDownloadFetchFailed) { 520 TEST_F(DownloadProtectionServiceTest, CheckClientDownloadFetchFailed) {
517 net::FakeURLFetcherFactory factory(NULL); 521 net::FakeURLFetcherFactory factory(NULL);
518 // HTTP request will fail. 522 // HTTP request will fail.
519 factory.SetFakeResponse( 523 factory.SetFakeResponse(
520 DownloadProtectionService::GetDownloadRequestUrl(), std::string(), 524 DownloadProtectionService::GetDownloadRequestUrl(), std::string(),
521 net::HTTP_INTERNAL_SERVER_ERROR, net::URLRequestStatus::FAILED); 525 net::HTTP_INTERNAL_SERVER_ERROR, net::URLRequestStatus::FAILED);
522 526
523 base::FilePath a_tmp(FILE_PATH_LITERAL("a.tmp")); 527 base::FilePath a_tmp(FILE_PATH_LITERAL("a.tmp"));
(...skipping 450 matching lines...) Expand 10 before | Expand all | Expand 10 after
974 EXPECT_CALL(*binary_feature_extractor_.get(), CheckSignature(tmp_path, _)) 978 EXPECT_CALL(*binary_feature_extractor_.get(), CheckSignature(tmp_path, _))
975 .WillOnce(SetCertificateContents("dummy cert data")); 979 .WillOnce(SetCertificateContents("dummy cert data"));
976 EXPECT_CALL(*binary_feature_extractor_.get(), 980 EXPECT_CALL(*binary_feature_extractor_.get(),
977 ExtractImageHeaders(tmp_path, _)) 981 ExtractImageHeaders(tmp_path, _))
978 .WillOnce(SetDosHeaderContents("dummy dos header")); 982 .WillOnce(SetDosHeaderContents("dummy dos header"));
979 download_service_->CheckClientDownload( 983 download_service_->CheckClientDownload(
980 &item, 984 &item,
981 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, 985 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback,
982 base::Unretained(this))); 986 base::Unretained(this)));
983 987
984 #if !defined(OS_WIN) 988 #if !defined(OS_WIN) && !defined(OS_MACOSX)
985 // SendRequest is not called. Wait for FinishRequest to call our callback. 989 // SendRequest is not called. Wait for FinishRequest to call our callback.
986 MessageLoop::current()->Run(); 990 MessageLoop::current()->Run();
987 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 991 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
988 EXPECT_EQ(NULL, fetcher); 992 EXPECT_EQ(NULL, fetcher);
989 #else 993 #else
990 // Run the message loop(s) until SendRequest is called. 994 // Run the message loop(s) until SendRequest is called.
991 FlushThreadMessageLoops(); 995 FlushThreadMessageLoops();
992 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 996 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
993 ASSERT_TRUE(fetcher); 997 ASSERT_TRUE(fetcher);
994 ClientDownloadRequest request; 998 ClientDownloadRequest request;
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
1059 MatchDownloadWhitelistUrl(_)) 1063 MatchDownloadWhitelistUrl(_))
1060 .WillRepeatedly(Return(false)); 1064 .WillRepeatedly(Return(false));
1061 EXPECT_CALL(*binary_feature_extractor_.get(), CheckSignature(tmp_path, _)); 1065 EXPECT_CALL(*binary_feature_extractor_.get(), CheckSignature(tmp_path, _));
1062 EXPECT_CALL(*binary_feature_extractor_.get(), 1066 EXPECT_CALL(*binary_feature_extractor_.get(),
1063 ExtractImageHeaders(tmp_path, _)); 1067 ExtractImageHeaders(tmp_path, _));
1064 download_service_->CheckClientDownload( 1068 download_service_->CheckClientDownload(
1065 &item, 1069 &item,
1066 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, 1070 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback,
1067 base::Unretained(this))); 1071 base::Unretained(this)));
1068 1072
1069 #if !defined(OS_WIN) 1073 #if !defined(OS_WIN) && !defined(OS_MACOSX)
1070 // SendRequest is not called. Wait for FinishRequest to call our callback. 1074 // SendRequest is not called. Wait for FinishRequest to call our callback.
1071 MessageLoop::current()->Run(); 1075 MessageLoop::current()->Run();
1072 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 1076 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
1073 EXPECT_EQ(NULL, fetcher); 1077 EXPECT_EQ(NULL, fetcher);
1074 #else 1078 #else
1075 // Run the message loop(s) until SendRequest is called. 1079 // Run the message loop(s) until SendRequest is called.
1076 FlushThreadMessageLoops(); 1080 FlushThreadMessageLoops();
1077 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 1081 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
1078 ASSERT_TRUE(fetcher); 1082 ASSERT_TRUE(fetcher);
1079 ClientDownloadRequest request; 1083 ClientDownloadRequest request;
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
1147 .WillRepeatedly(SetDosHeaderContents("dummy dos header")); 1151 .WillRepeatedly(SetDosHeaderContents("dummy dos header"));
1148 1152
1149 // First test with no history match for the tab URL. 1153 // First test with no history match for the tab URL.
1150 { 1154 {
1151 TestURLFetcherWatcher fetcher_watcher(&factory); 1155 TestURLFetcherWatcher fetcher_watcher(&factory);
1152 download_service_->CheckClientDownload( 1156 download_service_->CheckClientDownload(
1153 &item, 1157 &item,
1154 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, 1158 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback,
1155 base::Unretained(this))); 1159 base::Unretained(this)));
1156 1160
1157 #if !defined(OS_WIN) 1161 #if !defined(OS_WIN) && !defined(OS_MACOSX)
1158 // SendRequest is not called. Wait for FinishRequest to call our callback. 1162 // SendRequest is not called. Wait for FinishRequest to call our callback.
1159 MessageLoop::current()->Run(); 1163 MessageLoop::current()->Run();
1160 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 1164 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
1161 EXPECT_EQ(NULL, fetcher); 1165 EXPECT_EQ(NULL, fetcher);
1162 #else 1166 #else
1163 EXPECT_EQ(0, fetcher_watcher.WaitForRequest()); 1167 EXPECT_EQ(0, fetcher_watcher.WaitForRequest());
1164 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 1168 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
1165 ASSERT_TRUE(fetcher); 1169 ASSERT_TRUE(fetcher);
1166 ClientDownloadRequest request; 1170 ClientDownloadRequest request;
1167 EXPECT_TRUE(request.ParseFromString(fetcher->upload_data())); 1171 EXPECT_TRUE(request.ParseFromString(fetcher->upload_data()));
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
1222 redirects, 1226 redirects,
1223 content::PAGE_TRANSITION_TYPED, 1227 content::PAGE_TRANSITION_TYPED,
1224 history::SOURCE_BROWSED, 1228 history::SOURCE_BROWSED,
1225 false); 1229 false);
1226 1230
1227 TestURLFetcherWatcher fetcher_watcher(&factory); 1231 TestURLFetcherWatcher fetcher_watcher(&factory);
1228 download_service_->CheckClientDownload( 1232 download_service_->CheckClientDownload(
1229 &item, 1233 &item,
1230 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback, 1234 base::Bind(&DownloadProtectionServiceTest::CheckDoneCallback,
1231 base::Unretained(this))); 1235 base::Unretained(this)));
1232 #if !defined(OS_WIN) 1236 #if !defined(OS_WIN) && !defined(OS_MACOSX)
1233 // SendRequest is not called. Wait for FinishRequest to call our callback. 1237 // SendRequest is not called. Wait for FinishRequest to call our callback.
1234 MessageLoop::current()->Run(); 1238 MessageLoop::current()->Run();
1235 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 1239 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
1236 EXPECT_EQ(NULL, fetcher); 1240 EXPECT_EQ(NULL, fetcher);
1237 #else 1241 #else
1238 EXPECT_EQ(0, fetcher_watcher.WaitForRequest()); 1242 EXPECT_EQ(0, fetcher_watcher.WaitForRequest());
1239 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0); 1243 net::TestURLFetcher* fetcher = factory.GetFetcherByID(0);
1240 ASSERT_TRUE(fetcher); 1244 ASSERT_TRUE(fetcher);
1241 ClientDownloadRequest request; 1245 ClientDownloadRequest request;
1242 EXPECT_TRUE(request.ParseFromString(fetcher->upload_data())); 1246 EXPECT_TRUE(request.ParseFromString(fetcher->upload_data()));
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
1514 EXPECT_THAT(whitelist_strings, ElementsAre(cert_base + "/OU=unit")); 1518 EXPECT_THAT(whitelist_strings, ElementsAre(cert_base + "/OU=unit"));
1515 1519
1516 cert = ReadTestCertificate("test_c.pem"); 1520 cert = ReadTestCertificate("test_c.pem");
1517 ASSERT_TRUE(cert.get()); 1521 ASSERT_TRUE(cert.get());
1518 whitelist_strings.clear(); 1522 whitelist_strings.clear();
1519 GetCertificateWhitelistStrings( 1523 GetCertificateWhitelistStrings(
1520 *cert.get(), *issuer_cert.get(), &whitelist_strings); 1524 *cert.get(), *issuer_cert.get(), &whitelist_strings);
1521 EXPECT_THAT(whitelist_strings, ElementsAre()); 1525 EXPECT_THAT(whitelist_strings, ElementsAre());
1522 } 1526 }
1523 } // namespace safe_browsing 1527 } // namespace safe_browsing
OLDNEW
« no previous file with comments | « chrome/browser/safe_browsing/download_protection_service.cc ('k') | chrome/common/safe_browsing/csd.proto » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698