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

Side by Side Diff: chrome/browser/ui/login/login_handler_browsertest.cc

Issue 2792493002: Fix two tests that started failing with PlzNavigate after browser-initiated navigations stopped goi… (Closed)
Patch Set: Created 3 years, 8 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 unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include <algorithm> 5 #include <algorithm>
6 #include <list> 6 #include <list>
7 #include <map> 7 #include <map>
8 8
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/strings/utf_string_conversions.h" 10 #include "base/strings/utf_string_conversions.h"
(...skipping 790 matching lines...) Expand 10 before | Expand all | Expand 10 after
801 } 801 }
802 } 802 }
803 803
804 // Should stay on the main frame's url once the prompt the iframe is closed. 804 // Should stay on the main frame's url once the prompt the iframe is closed.
805 EXPECT_EQ("www.a.com", contents->GetVisibleURL().host()); 805 EXPECT_EQ("www.a.com", contents->GetVisibleURL().host());
806 806
807 EXPECT_EQ(1, observer.auth_needed_count()); 807 EXPECT_EQ(1, observer.auth_needed_count());
808 } 808 }
809 809
810 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, SupplyRedundantAuths) { 810 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, SupplyRedundantAuths) {
811 if (content::IsBrowserSideNavigationEnabled())
812 return; // TODO(jam): investigate
813 ASSERT_TRUE(embedded_test_server()->Start()); 811 ASSERT_TRUE(embedded_test_server()->Start());
814 812
815 // Get NavigationController for tab 1. 813 // Get NavigationController for tab 1.
816 content::WebContents* contents_1 = 814 content::WebContents* contents_1 =
817 browser()->tab_strip_model()->GetActiveWebContents(); 815 browser()->tab_strip_model()->GetActiveWebContents();
818 NavigationController* controller_1 = &contents_1->GetController(); 816 NavigationController* controller_1 = &contents_1->GetController();
819 817
820 // Open a new tab. 818 // Open a new tab.
821 ui_test_utils::NavigateToURLWithDisposition( 819 ui_test_utils::NavigateToURLWithDisposition(
822 browser(), GURL("about:blank"), WindowOpenDisposition::NEW_FOREGROUND_TAB, 820 browser(), GURL("about:blank"), WindowOpenDisposition::NEW_FOREGROUND_TAB,
823 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 821 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
824 822
825 // Get NavigationController for tab 2. 823 // Get NavigationController for tab 2.
826 content::WebContents* contents_2 = 824 content::WebContents* contents_2 =
827 browser()->tab_strip_model()->GetActiveWebContents(); 825 browser()->tab_strip_model()->GetActiveWebContents();
828 ASSERT_NE(contents_1, contents_2); 826 ASSERT_NE(contents_1, contents_2);
829 NavigationController* controller_2 = &contents_2->GetController(); 827 NavigationController* controller_2 = &contents_2->GetController();
830 828
831 LoginPromptBrowserTestObserver observer; 829 LoginPromptBrowserTestObserver observer;
832 observer.Register(content::Source<NavigationController>(controller_1)); 830 observer.Register(content::Source<NavigationController>(controller_1));
833 observer.Register(content::Source<NavigationController>(controller_2)); 831 observer.Register(content::Source<NavigationController>(controller_2));
834 832
835 { 833 {
836 // Open different auth urls in each tab. 834 // Open different auth urls in each tab.
837 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1); 835 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1);
838 WindowedAuthNeededObserver auth_needed_waiter_2(controller_2);
839 contents_1->OpenURL(OpenURLParams( 836 contents_1->OpenURL(OpenURLParams(
840 embedded_test_server()->GetURL("/auth-basic/1"), content::Referrer(), 837 embedded_test_server()->GetURL("/auth-basic/1"), content::Referrer(),
841 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false)); 838 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false));
839 auth_needed_waiter_1.Wait();
840
841 WindowedAuthNeededObserver auth_needed_waiter_2(controller_2);
842 contents_2->OpenURL(OpenURLParams( 842 contents_2->OpenURL(OpenURLParams(
843 embedded_test_server()->GetURL("/auth-basic/2"), content::Referrer(), 843 embedded_test_server()->GetURL("/auth-basic/2"), content::Referrer(),
844 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false)); 844 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false));
845 auth_needed_waiter_1.Wait();
846 auth_needed_waiter_2.Wait(); 845 auth_needed_waiter_2.Wait();
847 846
848 ASSERT_EQ(2U, observer.handlers().size()); 847 ASSERT_EQ(2U, observer.handlers().size());
849 848
850 // Supply auth in one of the tabs. 849 // Supply auth in one of the tabs.
851 WindowedAuthSuppliedObserver auth_supplied_waiter_1(controller_1); 850 WindowedAuthSuppliedObserver auth_supplied_waiter_1(controller_1);
852 WindowedAuthSuppliedObserver auth_supplied_waiter_2(controller_2); 851 WindowedAuthSuppliedObserver auth_supplied_waiter_2(controller_2);
853 LoginHandler* handler_1 = *observer.handlers().begin(); 852 LoginHandler* handler_1 = *observer.handlers().begin();
854 ASSERT_TRUE(handler_1); 853 ASSERT_TRUE(handler_1);
855 SetAuthFor(handler_1); 854 SetAuthFor(handler_1);
856 855
857 // Both tabs should be authenticated. 856 // Both tabs should be authenticated.
858 auth_supplied_waiter_1.Wait(); 857 auth_supplied_waiter_1.Wait();
859 auth_supplied_waiter_2.Wait(); 858 auth_supplied_waiter_2.Wait();
860 } 859 }
861 860
862 EXPECT_EQ(2, observer.auth_needed_count()); 861 EXPECT_EQ(2, observer.auth_needed_count());
863 EXPECT_EQ(2, observer.auth_supplied_count()); 862 EXPECT_EQ(2, observer.auth_supplied_count());
864 EXPECT_EQ(0, observer.auth_cancelled_count()); 863 EXPECT_EQ(0, observer.auth_cancelled_count());
865 } 864 }
866 865
867 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, CancelRedundantAuths) { 866 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, CancelRedundantAuths) {
868 if (content::IsBrowserSideNavigationEnabled())
869 return; // TODO(jam): investigate
870 ASSERT_TRUE(embedded_test_server()->Start()); 867 ASSERT_TRUE(embedded_test_server()->Start());
871 868
872 // Get NavigationController for tab 1. 869 // Get NavigationController for tab 1.
873 content::WebContents* contents_1 = 870 content::WebContents* contents_1 =
874 browser()->tab_strip_model()->GetActiveWebContents(); 871 browser()->tab_strip_model()->GetActiveWebContents();
875 NavigationController* controller_1 = &contents_1->GetController(); 872 NavigationController* controller_1 = &contents_1->GetController();
876 873
877 // Open a new tab. 874 // Open a new tab.
878 ui_test_utils::NavigateToURLWithDisposition( 875 ui_test_utils::NavigateToURLWithDisposition(
879 browser(), GURL("about:blank"), WindowOpenDisposition::NEW_FOREGROUND_TAB, 876 browser(), GURL("about:blank"), WindowOpenDisposition::NEW_FOREGROUND_TAB,
880 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 877 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
881 878
882 // Get NavigationController for tab 2. 879 // Get NavigationController for tab 2.
883 content::WebContents* contents_2 = 880 content::WebContents* contents_2 =
884 browser()->tab_strip_model()->GetActiveWebContents(); 881 browser()->tab_strip_model()->GetActiveWebContents();
885 ASSERT_NE(contents_1, contents_2); 882 ASSERT_NE(contents_1, contents_2);
886 NavigationController* controller_2 = &contents_2->GetController(); 883 NavigationController* controller_2 = &contents_2->GetController();
887 884
888 LoginPromptBrowserTestObserver observer; 885 LoginPromptBrowserTestObserver observer;
889 observer.Register(content::Source<NavigationController>(controller_1)); 886 observer.Register(content::Source<NavigationController>(controller_1));
890 observer.Register(content::Source<NavigationController>(controller_2)); 887 observer.Register(content::Source<NavigationController>(controller_2));
891 888
892 { 889 {
893 // Open different auth urls in each tab. 890 // Open different auth urls in each tab.
894 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1); 891 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1);
895 WindowedAuthNeededObserver auth_needed_waiter_2(controller_2);
896 contents_1->OpenURL(OpenURLParams( 892 contents_1->OpenURL(OpenURLParams(
897 embedded_test_server()->GetURL("/auth-basic/1"), content::Referrer(), 893 embedded_test_server()->GetURL("/auth-basic/1"), content::Referrer(),
898 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false)); 894 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false));
895 auth_needed_waiter_1.Wait();
896
897 WindowedAuthNeededObserver auth_needed_waiter_2(controller_2);
899 contents_2->OpenURL(OpenURLParams( 898 contents_2->OpenURL(OpenURLParams(
900 embedded_test_server()->GetURL("/auth-basic/2"), content::Referrer(), 899 embedded_test_server()->GetURL("/auth-basic/2"), content::Referrer(),
901 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false)); 900 WindowOpenDisposition::CURRENT_TAB, ui::PAGE_TRANSITION_TYPED, false));
902 auth_needed_waiter_1.Wait();
903 auth_needed_waiter_2.Wait(); 901 auth_needed_waiter_2.Wait();
904 902
905 ASSERT_EQ(2U, observer.handlers().size()); 903 ASSERT_EQ(2U, observer.handlers().size());
906 904
907 // Cancel auth in one of the tabs. 905 // Cancel auth in one of the tabs.
908 WindowedAuthCancelledObserver auth_cancelled_waiter_1(controller_1); 906 WindowedAuthCancelledObserver auth_cancelled_waiter_1(controller_1);
909 WindowedAuthCancelledObserver auth_cancelled_waiter_2(controller_2); 907 WindowedAuthCancelledObserver auth_cancelled_waiter_2(controller_2);
910 LoginHandler* handler_1 = *observer.handlers().begin(); 908 LoginHandler* handler_1 = *observer.handlers().begin();
911 ASSERT_TRUE(handler_1); 909 ASSERT_TRUE(handler_1);
912 handler_1->CancelAuth(); 910 handler_1->CancelAuth();
(...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after
1433 // out. 1431 // out.
1434 EXPECT_TRUE( 1432 EXPECT_TRUE(
1435 WaitForRenderFrameReady(contents->GetInterstitialPage()->GetMainFrame())); 1433 WaitForRenderFrameReady(contents->GetInterstitialPage()->GetMainFrame()));
1436 EXPECT_TRUE(contents->ShowingInterstitialPage()); 1434 EXPECT_TRUE(contents->ShowingInterstitialPage());
1437 EXPECT_EQ(SSLBlockingPage::kTypeForTesting, contents->GetInterstitialPage() 1435 EXPECT_EQ(SSLBlockingPage::kTypeForTesting, contents->GetInterstitialPage()
1438 ->GetDelegateForTesting() 1436 ->GetDelegateForTesting()
1439 ->GetTypeForTesting()); 1437 ->GetTypeForTesting());
1440 } 1438 }
1441 1439
1442 } // namespace 1440 } // namespace
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698