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

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

Issue 12066003: Remove TabStripModel wrapper use. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: gtk Created 7 years, 10 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 | Annotate | Revision Log
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/utf_string_conversions.h" 9 #include "base/utf_string_conversions.h"
10 #include "chrome/browser/prerender/prerender_manager.h" 10 #include "chrome/browser/prerender/prerender_manager.h"
11 #include "chrome/browser/ui/browser.h" 11 #include "chrome/browser/ui/browser.h"
12 #include "chrome/browser/ui/browser_commands.h" 12 #include "chrome/browser/ui/browser_commands.h"
13 #include "chrome/browser/ui/browser_tabstrip.h"
14 #include "chrome/browser/ui/login/login_prompt.h" 13 #include "chrome/browser/ui/login/login_prompt.h"
14 #include "chrome/browser/ui/tabs/tab_strip_model.h"
15 #include "chrome/common/chrome_notification_types.h" 15 #include "chrome/common/chrome_notification_types.h"
16 #include "chrome/test/base/in_process_browser_test.h" 16 #include "chrome/test/base/in_process_browser_test.h"
17 #include "chrome/test/base/ui_test_utils.h" 17 #include "chrome/test/base/ui_test_utils.h"
18 #include "content/public/browser/notification_details.h" 18 #include "content/public/browser/notification_details.h"
19 #include "content/public/browser/notification_source.h" 19 #include "content/public/browser/notification_source.h"
20 #include "content/public/browser/web_contents.h" 20 #include "content/public/browser/web_contents.h"
21 #include "content/public/test/browser_test_utils.h" 21 #include "content/public/test/browser_test_utils.h"
22 #include "net/base/auth.h" 22 #include "net/base/auth.h"
23 #include "net/base/mock_host_resolver.h" 23 #include "net/base/mock_host_resolver.h"
24 24
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 247
248 ~SetPrefetchForTest() { 248 ~SetPrefetchForTest() {
249 prerender::PrerenderManager::SetIsPrefetchEnabled(old_prefetch_state_); 249 prerender::PrerenderManager::SetIsPrefetchEnabled(old_prefetch_state_);
250 prerender::PrerenderManager::SetMode(old_mode_); 250 prerender::PrerenderManager::SetMode(old_mode_);
251 } 251 }
252 private: 252 private:
253 bool old_prefetch_state_; 253 bool old_prefetch_state_;
254 prerender::PrerenderManager::PrerenderManagerMode old_mode_; 254 prerender::PrerenderManager::PrerenderManagerMode old_mode_;
255 } set_prefetch_for_test(true); 255 } set_prefetch_for_test(true);
256 256
257 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 257 content::WebContents* contents =
258 browser()->tab_strip_model()->GetActiveWebContents();
258 NavigationController* controller = &contents->GetController(); 259 NavigationController* controller = &contents->GetController();
259 LoginPromptBrowserTestObserver observer; 260 LoginPromptBrowserTestObserver observer;
260 261
261 observer.Register(content::Source<NavigationController>(controller)); 262 observer.Register(content::Source<NavigationController>(controller));
262 263
263 WindowedLoadStopObserver load_stop_waiter(controller, 1); 264 WindowedLoadStopObserver load_stop_waiter(controller, 1);
264 browser()->OpenURL(OpenURLParams( 265 browser()->OpenURL(OpenURLParams(
265 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 266 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
266 false)); 267 false));
267 268
268 load_stop_waiter.Wait(); 269 load_stop_waiter.Wait();
269 EXPECT_TRUE(observer.handlers_.empty()); 270 EXPECT_TRUE(observer.handlers_.empty());
270 EXPECT_TRUE(test_server()->Stop()); 271 EXPECT_TRUE(test_server()->Stop());
271 } 272 }
272 273
273 // Test that "Basic" HTTP authentication works. 274 // Test that "Basic" HTTP authentication works.
274 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestBasicAuth) { 275 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestBasicAuth) {
275 ASSERT_TRUE(test_server()->Start()); 276 ASSERT_TRUE(test_server()->Start());
276 GURL test_page = test_server()->GetURL(kAuthBasicPage); 277 GURL test_page = test_server()->GetURL(kAuthBasicPage);
277 278
278 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 279 content::WebContents* contents =
280 browser()->tab_strip_model()->GetActiveWebContents();
279 NavigationController* controller = &contents->GetController(); 281 NavigationController* controller = &contents->GetController();
280 LoginPromptBrowserTestObserver observer; 282 LoginPromptBrowserTestObserver observer;
281 283
282 observer.Register(content::Source<NavigationController>(controller)); 284 observer.Register(content::Source<NavigationController>(controller));
283 285
284 { 286 {
285 WindowedAuthNeededObserver auth_needed_waiter(controller); 287 WindowedAuthNeededObserver auth_needed_waiter(controller);
286 browser()->OpenURL(OpenURLParams( 288 browser()->OpenURL(OpenURLParams(
287 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 289 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
288 false)); 290 false));
(...skipping 26 matching lines...) Expand all
315 ExpectedTitleFromAuth(ASCIIToUTF16("basicuser"), ASCIIToUTF16("secret")); 317 ExpectedTitleFromAuth(ASCIIToUTF16("basicuser"), ASCIIToUTF16("secret"));
316 content::TitleWatcher title_watcher(contents, expected_title); 318 content::TitleWatcher title_watcher(contents, expected_title);
317 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); 319 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle());
318 } 320 }
319 321
320 // Test that "Digest" HTTP authentication works. 322 // Test that "Digest" HTTP authentication works.
321 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestDigestAuth) { 323 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestDigestAuth) {
322 ASSERT_TRUE(test_server()->Start()); 324 ASSERT_TRUE(test_server()->Start());
323 GURL test_page = test_server()->GetURL(kAuthDigestPage); 325 GURL test_page = test_server()->GetURL(kAuthDigestPage);
324 326
325 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 327 content::WebContents* contents =
328 browser()->tab_strip_model()->GetActiveWebContents();
326 NavigationController* controller = &contents->GetController(); 329 NavigationController* controller = &contents->GetController();
327 LoginPromptBrowserTestObserver observer; 330 LoginPromptBrowserTestObserver observer;
328 331
329 observer.Register(content::Source<NavigationController>(controller)); 332 observer.Register(content::Source<NavigationController>(controller));
330 333
331 { 334 {
332 WindowedAuthNeededObserver auth_needed_waiter(controller); 335 WindowedAuthNeededObserver auth_needed_waiter(controller);
333 browser()->OpenURL(OpenURLParams( 336 browser()->OpenURL(OpenURLParams(
334 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 337 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
335 false)); 338 false));
(...skipping 26 matching lines...) Expand all
362 auth_supplied_waiter.Wait(); 365 auth_supplied_waiter.Wait();
363 366
364 string16 expected_title = ExpectedTitleFromAuth(username, password); 367 string16 expected_title = ExpectedTitleFromAuth(username, password);
365 content::TitleWatcher title_watcher(contents, expected_title); 368 content::TitleWatcher title_watcher(contents, expected_title);
366 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); 369 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle());
367 } 370 }
368 371
369 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestTwoAuths) { 372 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestTwoAuths) {
370 ASSERT_TRUE(test_server()->Start()); 373 ASSERT_TRUE(test_server()->Start());
371 374
372 content::WebContents* contents1 = chrome::GetActiveWebContents(browser()); 375 content::WebContents* contents1 =
376 browser()->tab_strip_model()->GetActiveWebContents();
373 NavigationController* controller1 = &contents1->GetController(); 377 NavigationController* controller1 = &contents1->GetController();
374 LoginPromptBrowserTestObserver observer; 378 LoginPromptBrowserTestObserver observer;
375 379
376 observer.Register(content::Source<NavigationController>(controller1)); 380 observer.Register(content::Source<NavigationController>(controller1));
377 381
378 // Open a new tab. 382 // Open a new tab.
379 ui_test_utils::NavigateToURLWithDisposition( 383 ui_test_utils::NavigateToURLWithDisposition(
380 browser(), 384 browser(),
381 GURL("about:blank"), 385 GURL("about:blank"),
382 NEW_FOREGROUND_TAB, 386 NEW_FOREGROUND_TAB,
383 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 387 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
384 388
385 content::WebContents* contents2 = chrome::GetActiveWebContents(browser()); 389 content::WebContents* contents2 =
390 browser()->tab_strip_model()->GetActiveWebContents();
386 ASSERT_NE(contents1, contents2); 391 ASSERT_NE(contents1, contents2);
387 NavigationController* controller2 = &contents2->GetController(); 392 NavigationController* controller2 = &contents2->GetController();
388 observer.Register(content::Source<NavigationController>(controller2)); 393 observer.Register(content::Source<NavigationController>(controller2));
389 394
390 { 395 {
391 WindowedAuthNeededObserver auth_needed_waiter(controller1); 396 WindowedAuthNeededObserver auth_needed_waiter(controller1);
392 contents1->OpenURL(OpenURLParams( 397 contents1->OpenURL(OpenURLParams(
393 test_server()->GetURL(kAuthBasicPage), Referrer(), 398 test_server()->GetURL(kAuthBasicPage), Referrer(),
394 CURRENT_TAB, content::PAGE_TRANSITION_TYPED, false)); 399 CURRENT_TAB, content::PAGE_TRANSITION_TYPED, false));
395 auth_needed_waiter.Wait(); 400 auth_needed_waiter.Wait();
(...skipping 27 matching lines...) Expand all
423 } 428 }
424 429
425 // Test login prompt cancellation. 430 // Test login prompt cancellation.
426 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestCancelAuth) { 431 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestCancelAuth) {
427 ASSERT_TRUE(test_server()->Start()); 432 ASSERT_TRUE(test_server()->Start());
428 GURL auth_page = test_server()->GetURL(kAuthBasicPage); 433 GURL auth_page = test_server()->GetURL(kAuthBasicPage);
429 GURL no_auth_page_1 = test_server()->GetURL("a"); 434 GURL no_auth_page_1 = test_server()->GetURL("a");
430 GURL no_auth_page_2 = test_server()->GetURL("b"); 435 GURL no_auth_page_2 = test_server()->GetURL("b");
431 GURL no_auth_page_3 = test_server()->GetURL("c"); 436 GURL no_auth_page_3 = test_server()->GetURL("c");
432 437
433 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 438 content::WebContents* contents =
439 browser()->tab_strip_model()->GetActiveWebContents();
434 NavigationController* controller = &contents->GetController(); 440 NavigationController* controller = &contents->GetController();
435 441
436 LoginPromptBrowserTestObserver observer; 442 LoginPromptBrowserTestObserver observer;
437 observer.Register(content::Source<NavigationController>(controller)); 443 observer.Register(content::Source<NavigationController>(controller));
438 444
439 // First navigate to an unauthenticated page so we have something to 445 // First navigate to an unauthenticated page so we have something to
440 // go back to. 446 // go back to.
441 ui_test_utils::NavigateToURL(browser(), no_auth_page_1); 447 ui_test_utils::NavigateToURL(browser(), no_auth_page_1);
442 448
443 // Navigating while auth is requested is the same as cancelling. 449 // Navigating while auth is requested is the same as cancelling.
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
520 526
521 // Test handling of resources that require authentication even though 527 // Test handling of resources that require authentication even though
522 // the page they are included on doesn't. In this case we should only 528 // the page they are included on doesn't. In this case we should only
523 // present the minimal number of prompts necessary for successfully 529 // present the minimal number of prompts necessary for successfully
524 // displaying the page. First we check whether cancelling works as 530 // displaying the page. First we check whether cancelling works as
525 // expected. 531 // expected.
526 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmCancellation) { 532 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmCancellation) {
527 ASSERT_TRUE(test_server()->Start()); 533 ASSERT_TRUE(test_server()->Start());
528 GURL test_page = test_server()->GetURL(kMultiRealmTestPage); 534 GURL test_page = test_server()->GetURL(kMultiRealmTestPage);
529 535
530 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 536 content::WebContents* contents =
537 browser()->tab_strip_model()->GetActiveWebContents();
531 NavigationController* controller = &contents->GetController(); 538 NavigationController* controller = &contents->GetController();
532 LoginPromptBrowserTestObserver observer; 539 LoginPromptBrowserTestObserver observer;
533 540
534 observer.Register(content::Source<NavigationController>(controller)); 541 observer.Register(content::Source<NavigationController>(controller));
535 542
536 WindowedLoadStopObserver load_stop_waiter(controller, 1); 543 WindowedLoadStopObserver load_stop_waiter(controller, 1);
537 544
538 { 545 {
539 WindowedAuthNeededObserver auth_needed_waiter(controller); 546 WindowedAuthNeededObserver auth_needed_waiter(controller);
540 browser()->OpenURL(OpenURLParams( 547 browser()->OpenURL(OpenURLParams(
(...skipping 29 matching lines...) Expand all
570 EXPECT_LT(0, observer.auth_cancelled_count_); 577 EXPECT_LT(0, observer.auth_cancelled_count_);
571 EXPECT_TRUE(test_server()->Stop()); 578 EXPECT_TRUE(test_server()->Stop());
572 } 579 }
573 580
574 // Similar to the MultipleRealmCancellation test above, but tests 581 // Similar to the MultipleRealmCancellation test above, but tests
575 // whether supplying credentials work as exepcted. 582 // whether supplying credentials work as exepcted.
576 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmConfirmation) { 583 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmConfirmation) {
577 ASSERT_TRUE(test_server()->Start()); 584 ASSERT_TRUE(test_server()->Start());
578 GURL test_page = test_server()->GetURL(kMultiRealmTestPage); 585 GURL test_page = test_server()->GetURL(kMultiRealmTestPage);
579 586
580 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 587 content::WebContents* contents =
588 browser()->tab_strip_model()->GetActiveWebContents();
581 NavigationController* controller = &contents->GetController(); 589 NavigationController* controller = &contents->GetController();
582 LoginPromptBrowserTestObserver observer; 590 LoginPromptBrowserTestObserver observer;
583 591
584 observer.Register(content::Source<NavigationController>(controller)); 592 observer.Register(content::Source<NavigationController>(controller));
585 593
586 WindowedLoadStopObserver load_stop_waiter(controller, 1); 594 WindowedLoadStopObserver load_stop_waiter(controller, 1);
587 int n_handlers = 0; 595 int n_handlers = 0;
588 596
589 { 597 {
590 WindowedAuthNeededObserver auth_needed_waiter(controller); 598 WindowedAuthNeededObserver auth_needed_waiter(controller);
(...skipping 29 matching lines...) Expand all
620 EXPECT_EQ(0, observer.auth_cancelled_count_); 628 EXPECT_EQ(0, observer.auth_cancelled_count_);
621 EXPECT_TRUE(test_server()->Stop()); 629 EXPECT_TRUE(test_server()->Stop());
622 } 630 }
623 631
624 // Testing for recovery from an incorrect password for the case where 632 // Testing for recovery from an incorrect password for the case where
625 // there are multiple authenticated resources. 633 // there are multiple authenticated resources.
626 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, IncorrectConfirmation) { 634 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, IncorrectConfirmation) {
627 ASSERT_TRUE(test_server()->Start()); 635 ASSERT_TRUE(test_server()->Start());
628 GURL test_page = test_server()->GetURL(kSingleRealmTestPage); 636 GURL test_page = test_server()->GetURL(kSingleRealmTestPage);
629 637
630 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 638 content::WebContents* contents =
639 browser()->tab_strip_model()->GetActiveWebContents();
631 NavigationController* controller = &contents->GetController(); 640 NavigationController* controller = &contents->GetController();
632 LoginPromptBrowserTestObserver observer; 641 LoginPromptBrowserTestObserver observer;
633 642
634 observer.Register(content::Source<NavigationController>(controller)); 643 observer.Register(content::Source<NavigationController>(controller));
635 644
636 { 645 {
637 WindowedAuthNeededObserver auth_needed_waiter(controller); 646 WindowedAuthNeededObserver auth_needed_waiter(controller);
638 browser()->OpenURL(OpenURLParams( 647 browser()->OpenURL(OpenURLParams(
639 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 648 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
640 false)); 649 false));
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
689 698
690 // If the favicon is an authenticated resource, we shouldn't prompt 699 // If the favicon is an authenticated resource, we shouldn't prompt
691 // for credentials. The same URL, if requested elsewhere should 700 // for credentials. The same URL, if requested elsewhere should
692 // prompt for credentials. 701 // prompt for credentials.
693 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, NoLoginPromptForFavicon) { 702 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, NoLoginPromptForFavicon) {
694 const char* kFaviconTestPage = "files/login/has_favicon.html"; 703 const char* kFaviconTestPage = "files/login/has_favicon.html";
695 const char* kFaviconResource = "auth-basic/favicon.gif"; 704 const char* kFaviconResource = "auth-basic/favicon.gif";
696 705
697 ASSERT_TRUE(test_server()->Start()); 706 ASSERT_TRUE(test_server()->Start());
698 707
699 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 708 content::WebContents* contents =
709 browser()->tab_strip_model()->GetActiveWebContents();
700 NavigationController* controller = &contents->GetController(); 710 NavigationController* controller = &contents->GetController();
701 LoginPromptBrowserTestObserver observer; 711 LoginPromptBrowserTestObserver observer;
702 712
703 observer.Register(content::Source<NavigationController>(controller)); 713 observer.Register(content::Source<NavigationController>(controller));
704 714
705 // First load a page that has a favicon that requires 715 // First load a page that has a favicon that requires
706 // authentication. There should be no login prompt. 716 // authentication. There should be no login prompt.
707 { 717 {
708 GURL test_page = test_server()->GetURL(kFaviconTestPage); 718 GURL test_page = test_server()->GetURL(kFaviconTestPage);
709 WindowedLoadStopObserver load_stop_waiter(controller, 1); 719 WindowedLoadStopObserver load_stop_waiter(controller, 1);
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
744 } 754 }
745 755
746 // Block crossdomain subresource login prompting as a phishing defense. 756 // Block crossdomain subresource login prompting as a phishing defense.
747 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, BlockCrossdomainPrompt) { 757 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, BlockCrossdomainPrompt) {
748 const char* kTestPage = "files/login/load_img_from_b.html"; 758 const char* kTestPage = "files/login/load_img_from_b.html";
749 759
750 host_resolver()->AddRule("www.a.com", "127.0.0.1"); 760 host_resolver()->AddRule("www.a.com", "127.0.0.1");
751 host_resolver()->AddRule("www.b.com", "127.0.0.1"); 761 host_resolver()->AddRule("www.b.com", "127.0.0.1");
752 ASSERT_TRUE(test_server()->Start()); 762 ASSERT_TRUE(test_server()->Start());
753 763
754 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 764 content::WebContents* contents =
765 browser()->tab_strip_model()->GetActiveWebContents();
755 NavigationController* controller = &contents->GetController(); 766 NavigationController* controller = &contents->GetController();
756 LoginPromptBrowserTestObserver observer; 767 LoginPromptBrowserTestObserver observer;
757 observer.Register(content::Source<NavigationController>(controller)); 768 observer.Register(content::Source<NavigationController>(controller));
758 769
759 // Load a page that has a cross-domain sub-resource authentication. 770 // Load a page that has a cross-domain sub-resource authentication.
760 // There should be no login prompt. 771 // There should be no login prompt.
761 { 772 {
762 GURL test_page = test_server()->GetURL(kTestPage); 773 GURL test_page = test_server()->GetURL(kTestPage);
763 ASSERT_EQ("127.0.0.1", test_page.host()); 774 ASSERT_EQ("127.0.0.1", test_page.host());
764 775
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
809 } 820 }
810 821
811 EXPECT_EQ(1, observer.auth_needed_count_); 822 EXPECT_EQ(1, observer.auth_needed_count_);
812 EXPECT_TRUE(test_server()->Stop()); 823 EXPECT_TRUE(test_server()->Stop());
813 } 824 }
814 825
815 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, SupplyRedundantAuths) { 826 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, SupplyRedundantAuths) {
816 ASSERT_TRUE(test_server()->Start()); 827 ASSERT_TRUE(test_server()->Start());
817 828
818 // Get NavigationController for tab 1. 829 // Get NavigationController for tab 1.
819 content::WebContents* contents_1 = chrome::GetActiveWebContents(browser()); 830 content::WebContents* contents_1 =
831 browser()->tab_strip_model()->GetActiveWebContents();
820 NavigationController* controller_1 = &contents_1->GetController(); 832 NavigationController* controller_1 = &contents_1->GetController();
821 833
822 // Open a new tab. 834 // Open a new tab.
823 ui_test_utils::NavigateToURLWithDisposition( 835 ui_test_utils::NavigateToURLWithDisposition(
824 browser(), 836 browser(),
825 GURL("about:blank"), 837 GURL("about:blank"),
826 NEW_FOREGROUND_TAB, 838 NEW_FOREGROUND_TAB,
827 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 839 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
828 840
829 // Get NavigationController for tab 2. 841 // Get NavigationController for tab 2.
830 content::WebContents* contents_2 = chrome::GetActiveWebContents(browser()); 842 content::WebContents* contents_2 =
843 browser()->tab_strip_model()->GetActiveWebContents();
831 ASSERT_NE(contents_1, contents_2); 844 ASSERT_NE(contents_1, contents_2);
832 NavigationController* controller_2 = &contents_2->GetController(); 845 NavigationController* controller_2 = &contents_2->GetController();
833 846
834 LoginPromptBrowserTestObserver observer; 847 LoginPromptBrowserTestObserver observer;
835 observer.Register(content::Source<NavigationController>(controller_1)); 848 observer.Register(content::Source<NavigationController>(controller_1));
836 observer.Register(content::Source<NavigationController>(controller_2)); 849 observer.Register(content::Source<NavigationController>(controller_2));
837 850
838 { 851 {
839 // Open different auth urls in each tab. 852 // Open different auth urls in each tab.
840 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1); 853 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1);
(...skipping 30 matching lines...) Expand all
871 EXPECT_EQ(2, observer.auth_needed_count_); 884 EXPECT_EQ(2, observer.auth_needed_count_);
872 EXPECT_EQ(2, observer.auth_supplied_count_); 885 EXPECT_EQ(2, observer.auth_supplied_count_);
873 EXPECT_EQ(0, observer.auth_cancelled_count_); 886 EXPECT_EQ(0, observer.auth_cancelled_count_);
874 EXPECT_TRUE(test_server()->Stop()); 887 EXPECT_TRUE(test_server()->Stop());
875 } 888 }
876 889
877 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, CancelRedundantAuths) { 890 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, CancelRedundantAuths) {
878 ASSERT_TRUE(test_server()->Start()); 891 ASSERT_TRUE(test_server()->Start());
879 892
880 // Get NavigationController for tab 1. 893 // Get NavigationController for tab 1.
881 content::WebContents* contents_1 = chrome::GetActiveWebContents(browser()); 894 content::WebContents* contents_1 =
895 browser()->tab_strip_model()->GetActiveWebContents();
882 NavigationController* controller_1 = &contents_1->GetController(); 896 NavigationController* controller_1 = &contents_1->GetController();
883 897
884 // Open a new tab. 898 // Open a new tab.
885 ui_test_utils::NavigateToURLWithDisposition( 899 ui_test_utils::NavigateToURLWithDisposition(
886 browser(), 900 browser(),
887 GURL("about:blank"), 901 GURL("about:blank"),
888 NEW_FOREGROUND_TAB, 902 NEW_FOREGROUND_TAB,
889 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 903 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
890 904
891 // Get NavigationController for tab 2. 905 // Get NavigationController for tab 2.
892 content::WebContents* contents_2 = chrome::GetActiveWebContents(browser()); 906 content::WebContents* contents_2 =
907 browser()->tab_strip_model()->GetActiveWebContents();
893 ASSERT_NE(contents_1, contents_2); 908 ASSERT_NE(contents_1, contents_2);
894 NavigationController* controller_2 = &contents_2->GetController(); 909 NavigationController* controller_2 = &contents_2->GetController();
895 910
896 LoginPromptBrowserTestObserver observer; 911 LoginPromptBrowserTestObserver observer;
897 observer.Register(content::Source<NavigationController>(controller_1)); 912 observer.Register(content::Source<NavigationController>(controller_1));
898 observer.Register(content::Source<NavigationController>(controller_2)); 913 observer.Register(content::Source<NavigationController>(controller_2));
899 914
900 { 915 {
901 // Open different auth urls in each tab. 916 // Open different auth urls in each tab.
902 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1); 917 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
934 EXPECT_EQ(0, observer.auth_supplied_count_); 949 EXPECT_EQ(0, observer.auth_supplied_count_);
935 EXPECT_EQ(2, observer.auth_cancelled_count_); 950 EXPECT_EQ(2, observer.auth_cancelled_count_);
936 EXPECT_TRUE(test_server()->Stop()); 951 EXPECT_TRUE(test_server()->Stop());
937 } 952 }
938 953
939 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, 954 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest,
940 SupplyRedundantAuthsMultiProfile) { 955 SupplyRedundantAuthsMultiProfile) {
941 ASSERT_TRUE(test_server()->Start()); 956 ASSERT_TRUE(test_server()->Start());
942 957
943 // Get NavigationController for regular tab. 958 // Get NavigationController for regular tab.
944 content::WebContents* contents = chrome::GetActiveWebContents(browser()); 959 content::WebContents* contents =
960 browser()->tab_strip_model()->GetActiveWebContents();
945 NavigationController* controller = &contents->GetController(); 961 NavigationController* controller = &contents->GetController();
946 962
947 // Open an incognito window. 963 // Open an incognito window.
948 Browser* browser_incognito = CreateIncognitoBrowser(); 964 Browser* browser_incognito = CreateIncognitoBrowser();
949 965
950 // Get NavigationController for incognito tab. 966 // Get NavigationController for incognito tab.
951 content::WebContents* contents_incognito = 967 content::WebContents* contents_incognito =
952 chrome::GetActiveWebContents(browser_incognito); 968 browser_incognito->tab_strip_model()->GetActiveWebContents();
953 ASSERT_NE(contents, contents_incognito); 969 ASSERT_NE(contents, contents_incognito);
954 NavigationController* controller_incognito = 970 NavigationController* controller_incognito =
955 &contents_incognito->GetController(); 971 &contents_incognito->GetController();
956 972
957 LoginPromptBrowserTestObserver observer; 973 LoginPromptBrowserTestObserver observer;
958 observer.Register(content::Source<NavigationController>(controller)); 974 observer.Register(content::Source<NavigationController>(controller));
959 LoginPromptBrowserTestObserver observer_incognito; 975 LoginPromptBrowserTestObserver observer_incognito;
960 observer_incognito.Register( 976 observer_incognito.Register(
961 content::Source<NavigationController>(controller_incognito)); 977 content::Source<NavigationController>(controller_incognito));
962 978
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1002 EXPECT_EQ(1, observer.auth_needed_count_); 1018 EXPECT_EQ(1, observer.auth_needed_count_);
1003 EXPECT_EQ(1, observer.auth_supplied_count_); 1019 EXPECT_EQ(1, observer.auth_supplied_count_);
1004 EXPECT_EQ(0, observer.auth_cancelled_count_); 1020 EXPECT_EQ(0, observer.auth_cancelled_count_);
1005 EXPECT_EQ(1, observer_incognito.auth_needed_count_); 1021 EXPECT_EQ(1, observer_incognito.auth_needed_count_);
1006 EXPECT_EQ(0, observer_incognito.auth_supplied_count_); 1022 EXPECT_EQ(0, observer_incognito.auth_supplied_count_);
1007 EXPECT_EQ(0, observer_incognito.auth_cancelled_count_); 1023 EXPECT_EQ(0, observer_incognito.auth_cancelled_count_);
1008 EXPECT_TRUE(test_server()->Stop()); 1024 EXPECT_TRUE(test_server()->Stop());
1009 } 1025 }
1010 1026
1011 } // namespace 1027 } // namespace
OLDNEW
« no previous file with comments | « chrome/browser/ui/gtk/location_bar_view_gtk_browsertest.cc ('k') | chrome/browser/ui/tab_modal_confirm_dialog_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698