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

Unified Diff: chrome/browser/safe_browsing/unverified_download_policy_unittest.cc

Issue 1613483003: [SafeBrowsing] Alternate extensions should also be subject to block list. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/safe_browsing/unverified_download_policy_unittest.cc
diff --git a/chrome/browser/safe_browsing/unverified_download_policy_unittest.cc b/chrome/browser/safe_browsing/unverified_download_policy_unittest.cc
index 9167d75bb3d88dd5eb8a46ca1d3425a337e45474..d8c37eb7739e161d17820268641fbe37e54829bc 100644
--- a/chrome/browser/safe_browsing/unverified_download_policy_unittest.cc
+++ b/chrome/browser/safe_browsing/unverified_download_policy_unittest.cc
@@ -137,39 +137,76 @@ TEST_F(UnverifiedDownloadPolicyTest, Whitelist) {
switches::kDisallowUncheckedDangerousDownloads);
base::FilePath test_file_path(FILE_PATH_LITERAL("foo.exe"));
+ std::vector<base::FilePath::StringType> test_extensions;
CompletionCallback completion_callback;
- CheckUnverifiedDownloadPolicy(GURL(), test_file_path,
+ CheckUnverifiedDownloadPolicy(GURL(), test_file_path, test_extensions,
completion_callback.GetCallback());
EXPECT_EQ(UnverifiedDownloadPolicy::DISALLOWED,
completion_callback.WaitForResult());
// Not http/s and hence isn't covered by the whitelist.
CheckUnverifiedDownloadPolicy(GURL("ftp://supported.example.com/foo/bar"),
- test_file_path,
+ test_file_path, test_extensions,
completion_callback.GetCallback());
EXPECT_EQ(UnverifiedDownloadPolicy::DISALLOWED,
completion_callback.WaitForResult());
CheckUnverifiedDownloadPolicy(GURL("http://supported.example.com/foo/bar"),
- test_file_path,
+ test_file_path, test_extensions,
completion_callback.GetCallback());
EXPECT_EQ(UnverifiedDownloadPolicy::ALLOWED,
completion_callback.WaitForResult());
CheckUnverifiedDownloadPolicy(GURL("http://unsupported.example.com/foo/bar"),
- test_file_path,
+ test_file_path, test_extensions,
completion_callback.GetCallback());
EXPECT_EQ(UnverifiedDownloadPolicy::DISALLOWED,
completion_callback.WaitForResult());
CheckUnverifiedDownloadPolicy(GURL("https://supported.example.com/foo/bar"),
- test_file_path,
+ test_file_path, test_extensions,
completion_callback.GetCallback());
EXPECT_EQ(UnverifiedDownloadPolicy::ALLOWED,
completion_callback.WaitForResult());
}
+TEST_F(UnverifiedDownloadPolicyTest, AlternateExtensions) {
+ base::CommandLine::ForCurrentProcess()->AppendSwitch(
+ switches::kDisallowUncheckedDangerousDownloads);
+ CompletionCallback completion_callback;
+
+ base::FilePath test_file_path(FILE_PATH_LITERAL("foo.txt"));
+ std::vector<base::FilePath::StringType> test_extensions;
+
+ CheckUnverifiedDownloadPolicy(GURL(), test_file_path, test_extensions,
+ completion_callback.GetCallback());
+ EXPECT_EQ(UnverifiedDownloadPolicy::ALLOWED,
+ completion_callback.WaitForResult());
+
+ test_extensions.push_back(FILE_PATH_LITERAL(".exe"));
+ CheckUnverifiedDownloadPolicy(GURL(), test_file_path, test_extensions,
+ completion_callback.GetCallback());
+ EXPECT_EQ(UnverifiedDownloadPolicy::DISALLOWED,
+ completion_callback.WaitForResult());
+
+ test_extensions.clear();
+ test_extensions.push_back(FILE_PATH_LITERAL(".txt"));
+ test_extensions.push_back(FILE_PATH_LITERAL(".exe"));
+ CheckUnverifiedDownloadPolicy(GURL(), test_file_path, test_extensions,
+ completion_callback.GetCallback());
+ EXPECT_EQ(UnverifiedDownloadPolicy::DISALLOWED,
+ completion_callback.WaitForResult());
+
+ test_extensions.clear();
+ test_extensions.push_back(FILE_PATH_LITERAL("e"));
+ CheckUnverifiedDownloadPolicy(GURL(), test_file_path, test_extensions,
+ completion_callback.GetCallback());
+ EXPECT_EQ(UnverifiedDownloadPolicy::ALLOWED,
+ completion_callback.WaitForResult());
+
+}
+
// Verify behavior when the SafeBrowsing service is disabled.
TEST_F(UnverifiedDownloadPolicyTest, ServiceDisabled) {
base::CommandLine::ForCurrentProcess()->AppendSwitch(
@@ -179,10 +216,11 @@ TEST_F(UnverifiedDownloadPolicyTest, ServiceDisabled) {
base::RunLoop().RunUntilIdle();
base::FilePath test_file_path(FILE_PATH_LITERAL("foo.exe"));
+ std::vector<base::FilePath::StringType> test_extensions;
CompletionCallback completion_callback;
CheckUnverifiedDownloadPolicy(GURL("http://supported.example.com/foo/bar"),
- test_file_path,
+ test_file_path, test_extensions,
completion_callback.GetCallback());
EXPECT_EQ(UnverifiedDownloadPolicy::ALLOWED,
completion_callback.WaitForResult());

Powered by Google App Engine
This is Rietveld 408576698