| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 | 5 // This test creates a fake safebrowsing service, where we can inject |
| 6 // malware and phishing urls. It then uses a real browser to go to | 6 // malware and phishing urls. It then uses a real browser to go to |
| 7 // these urls, and sends "goback" or "proceed" commands and verifies | 7 // these urls, and sends "goback" or "proceed" commands and verifies |
| 8 // they work. | 8 // they work. |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 404 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 415 } | 415 } |
| 416 | 416 |
| 417 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, MalwareProceed) { | 417 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, MalwareProceed) { |
| 418 GURL url = test_server()->GetURL(kEmptyPage); | 418 GURL url = test_server()->GetURL(kEmptyPage); |
| 419 AddURLResult(url, SafeBrowsingService::URL_MALWARE); | 419 AddURLResult(url, SafeBrowsingService::URL_MALWARE); |
| 420 | 420 |
| 421 ui_test_utils::NavigateToURL(browser(), url); | 421 ui_test_utils::NavigateToURL(browser(), url); |
| 422 ui_test_utils::WindowedNotificationObserver observer( | 422 ui_test_utils::WindowedNotificationObserver observer( |
| 423 content::NOTIFICATION_LOAD_STOP, | 423 content::NOTIFICATION_LOAD_STOP, |
| 424 content::Source<NavigationController>( | 424 content::Source<NavigationController>( |
| 425 &browser()->GetSelectedTabContentsWrapper()->controller())); | 425 &browser()->GetSelectedTabContentsWrapper()->tab_contents()-> |
| 426 controller())); |
| 426 SendCommand("\"proceed\""); // Simulate the user clicking "proceed" | 427 SendCommand("\"proceed\""); // Simulate the user clicking "proceed" |
| 427 observer.Wait(); | 428 observer.Wait(); |
| 428 AssertNoInterstitial(true); // Assert the interstitial is gone. | 429 AssertNoInterstitial(true); // Assert the interstitial is gone. |
| 429 EXPECT_EQ(url, browser()->GetSelectedTabContents()->GetURL()); | 430 EXPECT_EQ(url, browser()->GetSelectedTabContents()->GetURL()); |
| 430 } | 431 } |
| 431 | 432 |
| 432 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, PhishingDontProceed) { | 433 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, PhishingDontProceed) { |
| 433 GURL url = test_server()->GetURL(kEmptyPage); | 434 GURL url = test_server()->GetURL(kEmptyPage); |
| 434 AddURLResult(url, SafeBrowsingService::URL_PHISHING); | 435 AddURLResult(url, SafeBrowsingService::URL_PHISHING); |
| 435 | 436 |
| 436 ui_test_utils::NavigateToURL(browser(), url); | 437 ui_test_utils::NavigateToURL(browser(), url); |
| 437 | 438 |
| 438 SendCommand("\"takeMeBack\""); // Simulate the user clicking "proceed" | 439 SendCommand("\"takeMeBack\""); // Simulate the user clicking "proceed" |
| 439 AssertNoInterstitial(false); // Assert the interstitial is gone | 440 AssertNoInterstitial(false); // Assert the interstitial is gone |
| 440 EXPECT_EQ(GURL(chrome::kAboutBlankURL), // We are back to "about:blank". | 441 EXPECT_EQ(GURL(chrome::kAboutBlankURL), // We are back to "about:blank". |
| 441 browser()->GetSelectedTabContents()->GetURL()); | 442 browser()->GetSelectedTabContents()->GetURL()); |
| 442 } | 443 } |
| 443 | 444 |
| 444 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, PhishingProceed) { | 445 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, PhishingProceed) { |
| 445 GURL url = test_server()->GetURL(kEmptyPage); | 446 GURL url = test_server()->GetURL(kEmptyPage); |
| 446 AddURLResult(url, SafeBrowsingService::URL_PHISHING); | 447 AddURLResult(url, SafeBrowsingService::URL_PHISHING); |
| 447 | 448 |
| 448 ui_test_utils::NavigateToURL(browser(), url); | 449 ui_test_utils::NavigateToURL(browser(), url); |
| 449 | 450 |
| 450 ui_test_utils::WindowedNotificationObserver observer( | 451 ui_test_utils::WindowedNotificationObserver observer( |
| 451 content::NOTIFICATION_LOAD_STOP, | 452 content::NOTIFICATION_LOAD_STOP, |
| 452 content::Source<NavigationController>( | 453 content::Source<NavigationController>( |
| 453 &browser()->GetSelectedTabContentsWrapper()->controller())); | 454 &browser()->GetSelectedTabContentsWrapper()->tab_contents()-> |
| 455 controller())); |
| 454 SendCommand("\"proceed\""); // Simulate the user clicking "proceed". | 456 SendCommand("\"proceed\""); // Simulate the user clicking "proceed". |
| 455 observer.Wait(); | 457 observer.Wait(); |
| 456 AssertNoInterstitial(true); // Assert the interstitial is gone | 458 AssertNoInterstitial(true); // Assert the interstitial is gone |
| 457 EXPECT_EQ(url, browser()->GetSelectedTabContents()->GetURL()); | 459 EXPECT_EQ(url, browser()->GetSelectedTabContents()->GetURL()); |
| 458 } | 460 } |
| 459 | 461 |
| 460 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, PhishingReportError) { | 462 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, PhishingReportError) { |
| 461 GURL url = test_server()->GetURL(kEmptyPage); | 463 GURL url = test_server()->GetURL(kEmptyPage); |
| 462 AddURLResult(url, SafeBrowsingService::URL_PHISHING); | 464 AddURLResult(url, SafeBrowsingService::URL_PHISHING); |
| 463 | 465 |
| 464 ui_test_utils::NavigateToURL(browser(), url); | 466 ui_test_utils::NavigateToURL(browser(), url); |
| 465 | 467 |
| 466 ui_test_utils::WindowedNotificationObserver observer( | 468 ui_test_utils::WindowedNotificationObserver observer( |
| 467 content::NOTIFICATION_LOAD_STOP, | 469 content::NOTIFICATION_LOAD_STOP, |
| 468 content::Source<NavigationController>( | 470 content::Source<NavigationController>( |
| 469 &browser()->GetSelectedTabContentsWrapper()->controller())); | 471 &browser()->GetSelectedTabContentsWrapper()->tab_contents()-> |
| 472 controller())); |
| 470 SendCommand("\"reportError\""); // Simulate the user clicking "report error" | 473 SendCommand("\"reportError\""); // Simulate the user clicking "report error" |
| 471 observer.Wait(); | 474 observer.Wait(); |
| 472 AssertNoInterstitial(false); // Assert the interstitial is gone | 475 AssertNoInterstitial(false); // Assert the interstitial is gone |
| 473 | 476 |
| 474 // We are in the error reporting page. | 477 // We are in the error reporting page. |
| 475 EXPECT_EQ("/safebrowsing/report_error/", | 478 EXPECT_EQ("/safebrowsing/report_error/", |
| 476 browser()->GetSelectedTabContents()->GetURL().path()); | 479 browser()->GetSelectedTabContents()->GetURL().path()); |
| 477 } | 480 } |
| 478 | 481 |
| 479 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, | 482 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, |
| 480 PhishingLearnMore) { | 483 PhishingLearnMore) { |
| 481 GURL url = test_server()->GetURL(kEmptyPage); | 484 GURL url = test_server()->GetURL(kEmptyPage); |
| 482 AddURLResult(url, SafeBrowsingService::URL_PHISHING); | 485 AddURLResult(url, SafeBrowsingService::URL_PHISHING); |
| 483 | 486 |
| 484 ui_test_utils::NavigateToURL(browser(), url); | 487 ui_test_utils::NavigateToURL(browser(), url); |
| 485 | 488 |
| 486 ui_test_utils::WindowedNotificationObserver observer( | 489 ui_test_utils::WindowedNotificationObserver observer( |
| 487 content::NOTIFICATION_LOAD_STOP, | 490 content::NOTIFICATION_LOAD_STOP, |
| 488 content::Source<NavigationController>( | 491 content::Source<NavigationController>( |
| 489 &browser()->GetSelectedTabContentsWrapper()->controller())); | 492 &browser()->GetSelectedTabContentsWrapper()->tab_contents()-> |
| 493 controller())); |
| 490 SendCommand("\"learnMore\""); // Simulate the user clicking "learn more" | 494 SendCommand("\"learnMore\""); // Simulate the user clicking "learn more" |
| 491 observer.Wait(); | 495 observer.Wait(); |
| 492 AssertNoInterstitial(false); // Assert the interstitial is gone | 496 AssertNoInterstitial(false); // Assert the interstitial is gone |
| 493 | 497 |
| 494 // We are in the help page. | 498 // We are in the help page. |
| 495 EXPECT_EQ("/support/bin/answer.py", | 499 EXPECT_EQ("/support/bin/answer.py", |
| 496 browser()->GetSelectedTabContents()->GetURL().path()); | 500 browser()->GetSelectedTabContents()->GetURL().path()); |
| 497 } | 501 } |
| 498 | 502 |
| 499 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, MalwareIframeDontProceed) { | 503 IN_PROC_BROWSER_TEST_F(SafeBrowsingBlockingPageTest, MalwareIframeDontProceed) { |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 549 prefs::kSafeBrowsingReportingEnabled)); | 553 prefs::kSafeBrowsingReportingEnabled)); |
| 550 | 554 |
| 551 SendCommand("\"proceed\""); // Simulate the user clicking "back" | 555 SendCommand("\"proceed\""); // Simulate the user clicking "back" |
| 552 AssertNoInterstitial(true); // Assert the interstitial is gone | 556 AssertNoInterstitial(true); // Assert the interstitial is gone |
| 553 | 557 |
| 554 EXPECT_EQ(url, browser()->GetSelectedTabContents()->GetURL()); | 558 EXPECT_EQ(url, browser()->GetSelectedTabContents()->GetURL()); |
| 555 AssertReportSent(); | 559 AssertReportSent(); |
| 556 } | 560 } |
| 557 | 561 |
| 558 } // namespace | 562 } // namespace |
| OLD | NEW |