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 | 5 |
6 #include "base/stringprintf.h" | 6 #include "base/stringprintf.h" |
7 #include "base/test/test_simple_task_runner.h" | 7 #include "base/test/test_simple_task_runner.h" |
8 #include "base/thread_task_runner_handle.h" | 8 #include "base/thread_task_runner_handle.h" |
9 #include "base/time.h" | 9 #include "base/time.h" |
10 #include "chrome/browser/safe_browsing/protocol_manager.h" | 10 #include "chrome/browser/safe_browsing/protocol_manager.h" |
(...skipping 360 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
371 EXPECT_EQ("goog-phish-shavar;a:adds_phish:s:subs_phish\n" | 371 EXPECT_EQ("goog-phish-shavar;a:adds_phish:s:subs_phish\n" |
372 "unknown_list;a:adds_unknown:s:subs_unknown\n" | 372 "unknown_list;a:adds_unknown:s:subs_unknown\n" |
373 "goog-malware-shavar;\n", | 373 "goog-malware-shavar;\n", |
374 url_fetcher->upload_data()); | 374 url_fetcher->upload_data()); |
375 EXPECT_EQ(GURL("https://prefix.com/foo/downloads?client=unittest&appver=1.0" | 375 EXPECT_EQ(GURL("https://prefix.com/foo/downloads?client=unittest&appver=1.0" |
376 "&pver=2.2" + key_param_), | 376 "&pver=2.2" + key_param_), |
377 url_fetcher->GetOriginalURL()); | 377 url_fetcher->GetOriginalURL()); |
378 | 378 |
379 url_fetcher->set_status(net::URLRequestStatus()); | 379 url_fetcher->set_status(net::URLRequestStatus()); |
380 url_fetcher->set_response_code(200); | 380 url_fetcher->set_response_code(200); |
381 url_fetcher->SetResponseString(""); | 381 url_fetcher->SetResponseString(std::string()); |
382 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); | 382 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); |
383 | 383 |
384 EXPECT_TRUE(pm->IsUpdateScheduled()); | 384 EXPECT_TRUE(pm->IsUpdateScheduled()); |
385 } | 385 } |
386 | 386 |
387 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseBadBodyBackupSuccess) { | 387 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseBadBodyBackupSuccess) { |
388 scoped_refptr<base::TestSimpleTaskRunner> runner( | 388 scoped_refptr<base::TestSimpleTaskRunner> runner( |
389 new base::TestSimpleTaskRunner()); | 389 new base::TestSimpleTaskRunner()); |
390 base::ThreadTaskRunnerHandle runner_handler(runner); | 390 base::ThreadTaskRunnerHandle runner_handler(runner); |
391 net::TestURLFetcherFactory url_fetcher_factory; | 391 net::TestURLFetcherFactory url_fetcher_factory; |
(...skipping 25 matching lines...) Expand all Loading... |
417 | 417 |
418 // There should now be a backup request. | 418 // There should now be a backup request. |
419 net::TestURLFetcher* backup_url_fetcher = | 419 net::TestURLFetcher* backup_url_fetcher = |
420 url_fetcher_factory.GetFetcherByID(1); | 420 url_fetcher_factory.GetFetcherByID(1); |
421 ValidateUpdateFetcherRequest(backup_url_fetcher, | 421 ValidateUpdateFetcherRequest(backup_url_fetcher, |
422 kBackupHttpUrlPrefix); | 422 kBackupHttpUrlPrefix); |
423 | 423 |
424 // Respond to the backup successfully. | 424 // Respond to the backup successfully. |
425 backup_url_fetcher->set_status(net::URLRequestStatus()); | 425 backup_url_fetcher->set_status(net::URLRequestStatus()); |
426 backup_url_fetcher->set_response_code(200); | 426 backup_url_fetcher->set_response_code(200); |
427 backup_url_fetcher->SetResponseString(""); | 427 backup_url_fetcher->SetResponseString(std::string()); |
428 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 428 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
429 | 429 |
430 EXPECT_TRUE(pm->IsUpdateScheduled()); | 430 EXPECT_TRUE(pm->IsUpdateScheduled()); |
431 } | 431 } |
432 | 432 |
433 // Tests what happens when there is an HTTP error response to the update | 433 // Tests what happens when there is an HTTP error response to the update |
434 // request, as well as an error response to the backup update request. | 434 // request, as well as an error response to the backup update request. |
435 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseHttpErrorBackupError) { | 435 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseHttpErrorBackupError) { |
436 scoped_refptr<base::TestSimpleTaskRunner> runner( | 436 scoped_refptr<base::TestSimpleTaskRunner> runner( |
437 new base::TestSimpleTaskRunner()); | 437 new base::TestSimpleTaskRunner()); |
(...skipping 15 matching lines...) Expand all Loading... |
453 pm->ForceScheduleNextUpdate(TimeDelta()); | 453 pm->ForceScheduleNextUpdate(TimeDelta()); |
454 runner->RunPendingTasks(); | 454 runner->RunPendingTasks(); |
455 | 455 |
456 // We should have an URLFetcher at this point in time. | 456 // We should have an URLFetcher at this point in time. |
457 net::TestURLFetcher* url_fetcher = url_fetcher_factory.GetFetcherByID(0); | 457 net::TestURLFetcher* url_fetcher = url_fetcher_factory.GetFetcherByID(0); |
458 ValidateUpdateFetcherRequest(url_fetcher); | 458 ValidateUpdateFetcherRequest(url_fetcher); |
459 | 459 |
460 // Go ahead and respond to it. | 460 // Go ahead and respond to it. |
461 url_fetcher->set_status(net::URLRequestStatus()); | 461 url_fetcher->set_status(net::URLRequestStatus()); |
462 url_fetcher->set_response_code(404); | 462 url_fetcher->set_response_code(404); |
463 url_fetcher->SetResponseString(""); | 463 url_fetcher->SetResponseString(std::string()); |
464 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); | 464 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); |
465 | 465 |
466 // There should now be a backup request. | 466 // There should now be a backup request. |
467 net::TestURLFetcher* backup_url_fetcher = | 467 net::TestURLFetcher* backup_url_fetcher = |
468 url_fetcher_factory.GetFetcherByID(1); | 468 url_fetcher_factory.GetFetcherByID(1); |
469 ValidateUpdateFetcherRequest(backup_url_fetcher, kBackupHttpUrlPrefix); | 469 ValidateUpdateFetcherRequest(backup_url_fetcher, kBackupHttpUrlPrefix); |
470 | 470 |
471 // Respond to the backup unsuccessfully. | 471 // Respond to the backup unsuccessfully. |
472 backup_url_fetcher->set_status(net::URLRequestStatus()); | 472 backup_url_fetcher->set_status(net::URLRequestStatus()); |
473 backup_url_fetcher->set_response_code(404); | 473 backup_url_fetcher->set_response_code(404); |
474 backup_url_fetcher->SetResponseString(""); | 474 backup_url_fetcher->SetResponseString(std::string()); |
475 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 475 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
476 | 476 |
477 EXPECT_TRUE(pm->IsUpdateScheduled()); | 477 EXPECT_TRUE(pm->IsUpdateScheduled()); |
478 } | 478 } |
479 | 479 |
480 // Tests what happens when there is an HTTP error response to the update | 480 // Tests what happens when there is an HTTP error response to the update |
481 // request, followed by a successful response to the backup update request. | 481 // request, followed by a successful response to the backup update request. |
482 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseHttpErrorBackupSuccess) { | 482 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseHttpErrorBackupSuccess) { |
483 scoped_refptr<base::TestSimpleTaskRunner> runner( | 483 scoped_refptr<base::TestSimpleTaskRunner> runner( |
484 new base::TestSimpleTaskRunner()); | 484 new base::TestSimpleTaskRunner()); |
(...skipping 15 matching lines...) Expand all Loading... |
500 pm->ForceScheduleNextUpdate(TimeDelta()); | 500 pm->ForceScheduleNextUpdate(TimeDelta()); |
501 runner->RunPendingTasks(); | 501 runner->RunPendingTasks(); |
502 | 502 |
503 // We should have an URLFetcher at this point in time. | 503 // We should have an URLFetcher at this point in time. |
504 net::TestURLFetcher* url_fetcher = url_fetcher_factory.GetFetcherByID(0); | 504 net::TestURLFetcher* url_fetcher = url_fetcher_factory.GetFetcherByID(0); |
505 ValidateUpdateFetcherRequest(url_fetcher); | 505 ValidateUpdateFetcherRequest(url_fetcher); |
506 | 506 |
507 // Go ahead and respond to it. | 507 // Go ahead and respond to it. |
508 url_fetcher->set_status(net::URLRequestStatus()); | 508 url_fetcher->set_status(net::URLRequestStatus()); |
509 url_fetcher->set_response_code(404); | 509 url_fetcher->set_response_code(404); |
510 url_fetcher->SetResponseString(""); | 510 url_fetcher->SetResponseString(std::string()); |
511 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); | 511 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); |
512 | 512 |
513 // There should now be a backup request. | 513 // There should now be a backup request. |
514 net::TestURLFetcher* backup_url_fetcher = | 514 net::TestURLFetcher* backup_url_fetcher = |
515 url_fetcher_factory.GetFetcherByID(1); | 515 url_fetcher_factory.GetFetcherByID(1); |
516 ValidateUpdateFetcherRequest(backup_url_fetcher, | 516 ValidateUpdateFetcherRequest(backup_url_fetcher, |
517 kBackupHttpUrlPrefix); | 517 kBackupHttpUrlPrefix); |
518 | 518 |
519 // Respond to the backup successfully. | 519 // Respond to the backup successfully. |
520 backup_url_fetcher->set_status(net::URLRequestStatus()); | 520 backup_url_fetcher->set_status(net::URLRequestStatus()); |
521 backup_url_fetcher->set_response_code(200); | 521 backup_url_fetcher->set_response_code(200); |
522 backup_url_fetcher->SetResponseString(""); | 522 backup_url_fetcher->SetResponseString(std::string()); |
523 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 523 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
524 | 524 |
525 EXPECT_TRUE(pm->IsUpdateScheduled()); | 525 EXPECT_TRUE(pm->IsUpdateScheduled()); |
526 } | 526 } |
527 | 527 |
528 // Tests what happens when there is an HTTP error response to the update | 528 // Tests what happens when there is an HTTP error response to the update |
529 // request, and a timeout on the backup update request. | 529 // request, and a timeout on the backup update request. |
530 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseHttpErrorBackupTimeout) { | 530 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseHttpErrorBackupTimeout) { |
531 scoped_refptr<base::TestSimpleTaskRunner> runner( | 531 scoped_refptr<base::TestSimpleTaskRunner> runner( |
532 new base::TestSimpleTaskRunner()); | 532 new base::TestSimpleTaskRunner()); |
(...skipping 15 matching lines...) Expand all Loading... |
548 pm->ForceScheduleNextUpdate(TimeDelta()); | 548 pm->ForceScheduleNextUpdate(TimeDelta()); |
549 runner->RunPendingTasks(); | 549 runner->RunPendingTasks(); |
550 | 550 |
551 // We should have an URLFetcher at this point in time. | 551 // We should have an URLFetcher at this point in time. |
552 net::TestURLFetcher* url_fetcher = url_fetcher_factory.GetFetcherByID(0); | 552 net::TestURLFetcher* url_fetcher = url_fetcher_factory.GetFetcherByID(0); |
553 ValidateUpdateFetcherRequest(url_fetcher); | 553 ValidateUpdateFetcherRequest(url_fetcher); |
554 | 554 |
555 // Go ahead and respond to it. | 555 // Go ahead and respond to it. |
556 url_fetcher->set_status(net::URLRequestStatus()); | 556 url_fetcher->set_status(net::URLRequestStatus()); |
557 url_fetcher->set_response_code(404); | 557 url_fetcher->set_response_code(404); |
558 url_fetcher->SetResponseString(""); | 558 url_fetcher->SetResponseString(std::string()); |
559 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); | 559 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); |
560 | 560 |
561 // There should now be a backup request. | 561 // There should now be a backup request. |
562 net::TestURLFetcher* backup_url_fetcher = | 562 net::TestURLFetcher* backup_url_fetcher = |
563 url_fetcher_factory.GetFetcherByID(1); | 563 url_fetcher_factory.GetFetcherByID(1); |
564 ValidateUpdateFetcherRequest(backup_url_fetcher, kBackupHttpUrlPrefix); | 564 ValidateUpdateFetcherRequest(backup_url_fetcher, kBackupHttpUrlPrefix); |
565 | 565 |
566 // Either one or two calls to RunPendingTasks are needed here. The first run | 566 // Either one or two calls to RunPendingTasks are needed here. The first run |
567 // of RunPendingTasks will run the canceled timeout task associated with | 567 // of RunPendingTasks will run the canceled timeout task associated with |
568 // the first Update request. Depending on timing, this will either directly | 568 // the first Update request. Depending on timing, this will either directly |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
610 | 610 |
611 // There should be a backup URLFetcher now. | 611 // There should be a backup URLFetcher now. |
612 net::TestURLFetcher* backup_url_fetcher = | 612 net::TestURLFetcher* backup_url_fetcher = |
613 url_fetcher_factory.GetFetcherByID(1); | 613 url_fetcher_factory.GetFetcherByID(1); |
614 ValidateUpdateFetcherRequest(backup_url_fetcher, | 614 ValidateUpdateFetcherRequest(backup_url_fetcher, |
615 kBackupConnectUrlPrefix); | 615 kBackupConnectUrlPrefix); |
616 | 616 |
617 // Respond to the backup unsuccessfully. | 617 // Respond to the backup unsuccessfully. |
618 backup_url_fetcher->set_status(net::URLRequestStatus()); | 618 backup_url_fetcher->set_status(net::URLRequestStatus()); |
619 backup_url_fetcher->set_response_code(404); | 619 backup_url_fetcher->set_response_code(404); |
620 backup_url_fetcher->SetResponseString(""); | 620 backup_url_fetcher->SetResponseString(std::string()); |
621 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 621 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
622 | 622 |
623 EXPECT_TRUE(pm->IsUpdateScheduled()); | 623 EXPECT_TRUE(pm->IsUpdateScheduled()); |
624 } | 624 } |
625 | 625 |
626 // Tests what happens when there is a connection error when issuing the update | 626 // Tests what happens when there is a connection error when issuing the update |
627 // request, and a successful response to the backup update request. | 627 // request, and a successful response to the backup update request. |
628 TEST_F(SafeBrowsingProtocolManagerTest, | 628 TEST_F(SafeBrowsingProtocolManagerTest, |
629 UpdateResponseConnectionErrorBackupSuccess) { | 629 UpdateResponseConnectionErrorBackupSuccess) { |
630 scoped_refptr<base::TestSimpleTaskRunner> runner( | 630 scoped_refptr<base::TestSimpleTaskRunner> runner( |
(...skipping 27 matching lines...) Expand all Loading... |
658 | 658 |
659 // There should be a backup URLFetcher now. | 659 // There should be a backup URLFetcher now. |
660 net::TestURLFetcher* backup_url_fetcher = | 660 net::TestURLFetcher* backup_url_fetcher = |
661 url_fetcher_factory.GetFetcherByID(1); | 661 url_fetcher_factory.GetFetcherByID(1); |
662 ValidateUpdateFetcherRequest(backup_url_fetcher, | 662 ValidateUpdateFetcherRequest(backup_url_fetcher, |
663 kBackupConnectUrlPrefix); | 663 kBackupConnectUrlPrefix); |
664 | 664 |
665 // Respond to the backup unsuccessfully. | 665 // Respond to the backup unsuccessfully. |
666 backup_url_fetcher->set_status(net::URLRequestStatus()); | 666 backup_url_fetcher->set_status(net::URLRequestStatus()); |
667 backup_url_fetcher->set_response_code(200); | 667 backup_url_fetcher->set_response_code(200); |
668 backup_url_fetcher->SetResponseString(""); | 668 backup_url_fetcher->SetResponseString(std::string()); |
669 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 669 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
670 | 670 |
671 EXPECT_TRUE(pm->IsUpdateScheduled()); | 671 EXPECT_TRUE(pm->IsUpdateScheduled()); |
672 } | 672 } |
673 // Tests what happens when there is a network state error when issuing the | 673 // Tests what happens when there is a network state error when issuing the |
674 // update request, and an error with the backup update request. | 674 // update request, and an error with the backup update request. |
675 TEST_F(SafeBrowsingProtocolManagerTest, | 675 TEST_F(SafeBrowsingProtocolManagerTest, |
676 UpdateResponseNetworkErrorBackupError) { | 676 UpdateResponseNetworkErrorBackupError) { |
677 scoped_refptr<base::TestSimpleTaskRunner> runner( | 677 scoped_refptr<base::TestSimpleTaskRunner> runner( |
678 new base::TestSimpleTaskRunner()); | 678 new base::TestSimpleTaskRunner()); |
(...skipping 27 matching lines...) Expand all Loading... |
706 | 706 |
707 // There should be a backup URLFetcher now. | 707 // There should be a backup URLFetcher now. |
708 net::TestURLFetcher* backup_url_fetcher = | 708 net::TestURLFetcher* backup_url_fetcher = |
709 url_fetcher_factory.GetFetcherByID(1); | 709 url_fetcher_factory.GetFetcherByID(1); |
710 ValidateUpdateFetcherRequest(backup_url_fetcher, | 710 ValidateUpdateFetcherRequest(backup_url_fetcher, |
711 kBackupNetworkUrlPrefix); | 711 kBackupNetworkUrlPrefix); |
712 | 712 |
713 // Respond to the backup unsuccessfully. | 713 // Respond to the backup unsuccessfully. |
714 backup_url_fetcher->set_status(net::URLRequestStatus()); | 714 backup_url_fetcher->set_status(net::URLRequestStatus()); |
715 backup_url_fetcher->set_response_code(404); | 715 backup_url_fetcher->set_response_code(404); |
716 backup_url_fetcher->SetResponseString(""); | 716 backup_url_fetcher->SetResponseString(std::string()); |
717 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 717 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
718 | 718 |
719 EXPECT_TRUE(pm->IsUpdateScheduled()); | 719 EXPECT_TRUE(pm->IsUpdateScheduled()); |
720 } | 720 } |
721 | 721 |
722 // Tests what happens when there is a network state error when issuing the | 722 // Tests what happens when there is a network state error when issuing the |
723 // update request, and a successful response to the backup update request. | 723 // update request, and a successful response to the backup update request. |
724 TEST_F(SafeBrowsingProtocolManagerTest, | 724 TEST_F(SafeBrowsingProtocolManagerTest, |
725 UpdateResponseNetworkErrorBackupSuccess) { | 725 UpdateResponseNetworkErrorBackupSuccess) { |
726 scoped_refptr<base::TestSimpleTaskRunner> runner( | 726 scoped_refptr<base::TestSimpleTaskRunner> runner( |
(...skipping 28 matching lines...) Expand all Loading... |
755 | 755 |
756 // There should be a backup URLFetcher now. | 756 // There should be a backup URLFetcher now. |
757 net::TestURLFetcher* backup_url_fetcher = | 757 net::TestURLFetcher* backup_url_fetcher = |
758 url_fetcher_factory.GetFetcherByID(1); | 758 url_fetcher_factory.GetFetcherByID(1); |
759 ValidateUpdateFetcherRequest(backup_url_fetcher, | 759 ValidateUpdateFetcherRequest(backup_url_fetcher, |
760 kBackupNetworkUrlPrefix); | 760 kBackupNetworkUrlPrefix); |
761 | 761 |
762 // Respond to the backup unsuccessfully. | 762 // Respond to the backup unsuccessfully. |
763 backup_url_fetcher->set_status(net::URLRequestStatus()); | 763 backup_url_fetcher->set_status(net::URLRequestStatus()); |
764 backup_url_fetcher->set_response_code(200); | 764 backup_url_fetcher->set_response_code(200); |
765 backup_url_fetcher->SetResponseString(""); | 765 backup_url_fetcher->SetResponseString(std::string()); |
766 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 766 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
767 | 767 |
768 EXPECT_TRUE(pm->IsUpdateScheduled()); | 768 EXPECT_TRUE(pm->IsUpdateScheduled()); |
769 } | 769 } |
770 | 770 |
771 // Tests what happens when there is a timeout before an update response. | 771 // Tests what happens when there is a timeout before an update response. |
772 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseTimeoutBackupSuccess) { | 772 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseTimeoutBackupSuccess) { |
773 scoped_refptr<base::TestSimpleTaskRunner> runner( | 773 scoped_refptr<base::TestSimpleTaskRunner> runner( |
774 new base::TestSimpleTaskRunner()); | 774 new base::TestSimpleTaskRunner()); |
775 base::ThreadTaskRunnerHandle runner_handler(runner); | 775 base::ThreadTaskRunnerHandle runner_handler(runner); |
(...skipping 24 matching lines...) Expand all Loading... |
800 | 800 |
801 // There should be a backup URLFetcher now. | 801 // There should be a backup URLFetcher now. |
802 net::TestURLFetcher* backup_url_fetcher = | 802 net::TestURLFetcher* backup_url_fetcher = |
803 url_fetcher_factory.GetFetcherByID(1); | 803 url_fetcher_factory.GetFetcherByID(1); |
804 ValidateUpdateFetcherRequest(backup_url_fetcher, | 804 ValidateUpdateFetcherRequest(backup_url_fetcher, |
805 kBackupConnectUrlPrefix); | 805 kBackupConnectUrlPrefix); |
806 | 806 |
807 // Respond to the backup unsuccessfully. | 807 // Respond to the backup unsuccessfully. |
808 backup_url_fetcher->set_status(net::URLRequestStatus()); | 808 backup_url_fetcher->set_status(net::URLRequestStatus()); |
809 backup_url_fetcher->set_response_code(200); | 809 backup_url_fetcher->set_response_code(200); |
810 backup_url_fetcher->SetResponseString(""); | 810 backup_url_fetcher->SetResponseString(std::string()); |
811 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); | 811 backup_url_fetcher->delegate()->OnURLFetchComplete(backup_url_fetcher); |
812 | 812 |
813 EXPECT_TRUE(pm->IsUpdateScheduled()); | 813 EXPECT_TRUE(pm->IsUpdateScheduled()); |
814 } | 814 } |
815 | 815 |
816 // Tests what happens when there is a reset command in the response. | 816 // Tests what happens when there is a reset command in the response. |
817 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseReset) { | 817 TEST_F(SafeBrowsingProtocolManagerTest, UpdateResponseReset) { |
818 scoped_refptr<base::TestSimpleTaskRunner> runner( | 818 scoped_refptr<base::TestSimpleTaskRunner> runner( |
819 new base::TestSimpleTaskRunner()); | 819 new base::TestSimpleTaskRunner()); |
820 base::ThreadTaskRunnerHandle runner_handler(runner); | 820 base::ThreadTaskRunnerHandle runner_handler(runner); |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
881 "u:redirect-server.example.com/path\n"); | 881 "u:redirect-server.example.com/path\n"); |
882 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); | 882 url_fetcher->delegate()->OnURLFetchComplete(url_fetcher); |
883 | 883 |
884 // The redirect response contains an empty body. | 884 // The redirect response contains an empty body. |
885 net::TestURLFetcher* chunk_url_fetcher = | 885 net::TestURLFetcher* chunk_url_fetcher = |
886 url_fetcher_factory.GetFetcherByID(1); | 886 url_fetcher_factory.GetFetcherByID(1); |
887 ValidateRedirectFetcherRequest( | 887 ValidateRedirectFetcherRequest( |
888 chunk_url_fetcher, "https://redirect-server.example.com/path"); | 888 chunk_url_fetcher, "https://redirect-server.example.com/path"); |
889 chunk_url_fetcher->set_status(net::URLRequestStatus()); | 889 chunk_url_fetcher->set_status(net::URLRequestStatus()); |
890 chunk_url_fetcher->set_response_code(200); | 890 chunk_url_fetcher->set_response_code(200); |
891 chunk_url_fetcher->SetResponseString(""); | 891 chunk_url_fetcher->SetResponseString(std::string()); |
892 chunk_url_fetcher->delegate()->OnURLFetchComplete(chunk_url_fetcher); | 892 chunk_url_fetcher->delegate()->OnURLFetchComplete(chunk_url_fetcher); |
893 | 893 |
894 EXPECT_TRUE(pm->IsUpdateScheduled()); | 894 EXPECT_TRUE(pm->IsUpdateScheduled()); |
895 } | 895 } |
896 | 896 |
897 // Tests a single valid update response, followed by a single redirect response | 897 // Tests a single valid update response, followed by a single redirect response |
898 // that has an invalid body. | 898 // that has an invalid body. |
899 TEST_F(SafeBrowsingProtocolManagerTest, InvalidRedirectResponse) { | 899 TEST_F(SafeBrowsingProtocolManagerTest, InvalidRedirectResponse) { |
900 scoped_refptr<base::TestSimpleTaskRunner> runner( | 900 scoped_refptr<base::TestSimpleTaskRunner> runner( |
901 new base::TestSimpleTaskRunner()); | 901 new base::TestSimpleTaskRunner()); |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1062 second_chunk_url_fetcher->delegate()->OnURLFetchComplete( | 1062 second_chunk_url_fetcher->delegate()->OnURLFetchComplete( |
1063 second_chunk_url_fetcher); | 1063 second_chunk_url_fetcher); |
1064 | 1064 |
1065 EXPECT_FALSE(pm->IsUpdateScheduled()); | 1065 EXPECT_FALSE(pm->IsUpdateScheduled()); |
1066 | 1066 |
1067 // Invoke the AddChunksCallback to finish the update. | 1067 // Invoke the AddChunksCallback to finish the update. |
1068 runner->RunPendingTasks(); | 1068 runner->RunPendingTasks(); |
1069 | 1069 |
1070 EXPECT_TRUE(pm->IsUpdateScheduled()); | 1070 EXPECT_TRUE(pm->IsUpdateScheduled()); |
1071 } | 1071 } |
OLD | NEW |