| 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..3b794b870f99923849923de457c53ae82a2aa190 100644
|
| --- a/chrome/browser/safe_browsing/unverified_download_policy_unittest.cc
|
| +++ b/chrome/browser/safe_browsing/unverified_download_policy_unittest.cc
|
| @@ -137,34 +137,70 @@ 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());
|
| @@ -179,10 +215,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());
|
|
|