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 // This test creates a fake safebrowsing service, where we can inject known- | 5 // This test creates a fake safebrowsing service, where we can inject known- |
6 // threat urls. It then uses a real browser to go to these urls, and sends | 6 // threat urls. It then uses a real browser to go to these urls, and sends |
7 // "goback" or "proceed" commands and verifies they work. | 7 // "goback" or "proceed" commands and verifies they work. |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 | 10 |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 #include "net/test/url_request/url_request_mock_http_job.h" | 61 #include "net/test/url_request/url_request_mock_http_job.h" |
62 #include "testing/gmock/include/gmock/gmock-matchers.h" | 62 #include "testing/gmock/include/gmock/gmock-matchers.h" |
63 #include "ui/base/l10n/l10n_util.h" | 63 #include "ui/base/l10n/l10n_util.h" |
64 | 64 |
65 using chrome_browser_interstitials::SecurityInterstitialIDNTest; | 65 using chrome_browser_interstitials::SecurityInterstitialIDNTest; |
66 using content::BrowserThread; | 66 using content::BrowserThread; |
67 using content::InterstitialPage; | 67 using content::InterstitialPage; |
68 using content::NavigationController; | 68 using content::NavigationController; |
69 using content::RenderFrameHost; | 69 using content::RenderFrameHost; |
70 using content::WebContents; | 70 using content::WebContents; |
71 using security_interstitials::SafeBrowsingErrorUI; | 71 using security_interstitials::BaseSafeBrowsingErrorUI; |
72 | 72 |
73 namespace safe_browsing { | 73 namespace safe_browsing { |
74 | 74 |
75 namespace { | 75 namespace { |
76 | 76 |
77 const char kEmptyPage[] = "empty.html"; | 77 const char kEmptyPage[] = "empty.html"; |
78 const char kHTTPSPage[] = "/ssl/google.html"; | 78 const char kHTTPSPage[] = "/ssl/google.html"; |
79 const char kMaliciousPage[] = "safe_browsing/malware.html"; | 79 const char kMaliciousPage[] = "safe_browsing/malware.html"; |
80 const char kCrossSiteMaliciousPage[] = "safe_browsing/malware2.html"; | 80 const char kCrossSiteMaliciousPage[] = "safe_browsing/malware2.html"; |
81 const char kPageWithCrossOriginMaliciousIframe[] = | 81 const char kPageWithCrossOriginMaliciousIframe[] = |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
234 }; | 234 }; |
235 | 235 |
236 // A SafeBrowingBlockingPage class that lets us wait until it's hidden. | 236 // A SafeBrowingBlockingPage class that lets us wait until it's hidden. |
237 class TestSafeBrowsingBlockingPage : public SafeBrowsingBlockingPage { | 237 class TestSafeBrowsingBlockingPage : public SafeBrowsingBlockingPage { |
238 public: | 238 public: |
239 TestSafeBrowsingBlockingPage( | 239 TestSafeBrowsingBlockingPage( |
240 BaseUIManager* manager, | 240 BaseUIManager* manager, |
241 WebContents* web_contents, | 241 WebContents* web_contents, |
242 const GURL& main_frame_url, | 242 const GURL& main_frame_url, |
243 const UnsafeResourceList& unsafe_resources, | 243 const UnsafeResourceList& unsafe_resources, |
244 const SafeBrowsingErrorUI::SBErrorDisplayOptions& display_options) | 244 const BaseSafeBrowsingErrorUI::SBErrorDisplayOptions& display_options) |
245 : SafeBrowsingBlockingPage(manager, | 245 : SafeBrowsingBlockingPage(manager, |
246 web_contents, | 246 web_contents, |
247 main_frame_url, | 247 main_frame_url, |
248 unsafe_resources, | 248 unsafe_resources, |
249 display_options), | 249 display_options), |
250 wait_for_delete_(false) { | 250 wait_for_delete_(false) { |
251 // Don't wait the whole 3 seconds for the browser test. | 251 // Don't wait the whole 3 seconds for the browser test. |
252 SetThreatDetailsProceedDelayForTesting(100); | 252 SetThreatDetailsProceedDelayForTesting(100); |
253 } | 253 } |
254 | 254 |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
289 const GURL& main_frame_url, | 289 const GURL& main_frame_url, |
290 const SafeBrowsingBlockingPage::UnsafeResourceList& unsafe_resources) | 290 const SafeBrowsingBlockingPage::UnsafeResourceList& unsafe_resources) |
291 override { | 291 override { |
292 PrefService* prefs = | 292 PrefService* prefs = |
293 Profile::FromBrowserContext(web_contents->GetBrowserContext()) | 293 Profile::FromBrowserContext(web_contents->GetBrowserContext()) |
294 ->GetPrefs(); | 294 ->GetPrefs(); |
295 bool is_extended_reporting_opt_in_allowed = | 295 bool is_extended_reporting_opt_in_allowed = |
296 prefs->GetBoolean(prefs::kSafeBrowsingExtendedReportingOptInAllowed); | 296 prefs->GetBoolean(prefs::kSafeBrowsingExtendedReportingOptInAllowed); |
297 bool is_proceed_anyway_disabled = | 297 bool is_proceed_anyway_disabled = |
298 prefs->GetBoolean(prefs::kSafeBrowsingProceedAnywayDisabled); | 298 prefs->GetBoolean(prefs::kSafeBrowsingProceedAnywayDisabled); |
299 SafeBrowsingErrorUI::SBErrorDisplayOptions display_options( | 299 BaseSafeBrowsingErrorUI::SBErrorDisplayOptions display_options( |
300 BaseBlockingPage::IsMainPageLoadBlocked(unsafe_resources), | 300 BaseBlockingPage::IsMainPageLoadBlocked(unsafe_resources), |
301 is_extended_reporting_opt_in_allowed, | 301 is_extended_reporting_opt_in_allowed, |
302 web_contents->GetBrowserContext()->IsOffTheRecord(), | 302 web_contents->GetBrowserContext()->IsOffTheRecord(), |
303 IsExtendedReportingEnabled(*prefs), IsScout(*prefs), | 303 IsExtendedReportingEnabled(*prefs), IsScout(*prefs), |
304 is_proceed_anyway_disabled, | 304 is_proceed_anyway_disabled, |
305 BaseBlockingPage::IsMainPageLoadBlocked(unsafe_resources)); | 305 BaseBlockingPage::IsMainPageLoadBlocked(unsafe_resources)); |
306 return new TestSafeBrowsingBlockingPage(delegate, web_contents, | 306 return new TestSafeBrowsingBlockingPage(delegate, web_contents, |
307 main_frame_url, unsafe_resources, | 307 main_frame_url, unsafe_resources, |
308 display_options); | 308 display_options); |
309 } | 309 } |
(...skipping 1176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1486 | 1486 |
1487 INSTANTIATE_TEST_CASE_P( | 1487 INSTANTIATE_TEST_CASE_P( |
1488 SafeBrowsingBlockingPageIDNTestWithThreatType, | 1488 SafeBrowsingBlockingPageIDNTestWithThreatType, |
1489 SafeBrowsingBlockingPageIDNTest, | 1489 SafeBrowsingBlockingPageIDNTest, |
1490 testing::Combine(testing::Values(false, true), | 1490 testing::Combine(testing::Values(false, true), |
1491 testing::Values(SB_THREAT_TYPE_URL_MALWARE, | 1491 testing::Values(SB_THREAT_TYPE_URL_MALWARE, |
1492 SB_THREAT_TYPE_URL_PHISHING, | 1492 SB_THREAT_TYPE_URL_PHISHING, |
1493 SB_THREAT_TYPE_URL_UNWANTED))); | 1493 SB_THREAT_TYPE_URL_UNWANTED))); |
1494 | 1494 |
1495 } // namespace safe_browsing | 1495 } // namespace safe_browsing |
OLD | NEW |