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

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

Issue 10702029: Move tab functions off Browser into browser_tabstrip and browser_tabrestore. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 5 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"
13 #include "chrome/browser/ui/login/login_prompt.h" 14 #include "chrome/browser/ui/login/login_prompt.h"
14 #include "chrome/browser/ui/tab_contents/tab_contents.h" 15 #include "chrome/browser/ui/tab_contents/tab_contents.h"
15 #include "chrome/common/chrome_notification_types.h" 16 #include "chrome/common/chrome_notification_types.h"
16 #include "chrome/test/base/in_process_browser_test.h" 17 #include "chrome/test/base/in_process_browser_test.h"
17 #include "chrome/test/base/ui_test_utils.h" 18 #include "chrome/test/base/ui_test_utils.h"
18 #include "content/public/browser/notification_details.h" 19 #include "content/public/browser/notification_details.h"
19 #include "content/public/browser/notification_source.h" 20 #include "content/public/browser/notification_source.h"
20 #include "content/public/browser/web_contents.h" 21 #include "content/public/browser/web_contents.h"
21 #include "content/public/test/test_browser_thread.h" 22 #include "content/public/test/test_browser_thread.h"
22 #include "net/base/auth.h" 23 #include "net/base/auth.h"
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 248
248 ~SetPrefetchForTest() { 249 ~SetPrefetchForTest() {
249 prerender::PrerenderManager::SetIsPrefetchEnabled(old_prefetch_state_); 250 prerender::PrerenderManager::SetIsPrefetchEnabled(old_prefetch_state_);
250 prerender::PrerenderManager::SetMode(old_mode_); 251 prerender::PrerenderManager::SetMode(old_mode_);
251 } 252 }
252 private: 253 private:
253 bool old_prefetch_state_; 254 bool old_prefetch_state_;
254 prerender::PrerenderManager::PrerenderManagerMode old_mode_; 255 prerender::PrerenderManager::PrerenderManagerMode old_mode_;
255 } set_prefetch_for_test(true); 256 } set_prefetch_for_test(true);
256 257
257 content::WebContents* contents = browser()->GetActiveWebContents(); 258 content::WebContents* contents = chrome::GetActiveWebContents(browser());
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 = browser()->GetActiveWebContents(); 279 content::WebContents* contents = chrome::GetActiveWebContents(browser());
279 NavigationController* controller = &contents->GetController(); 280 NavigationController* controller = &contents->GetController();
280 LoginPromptBrowserTestObserver observer; 281 LoginPromptBrowserTestObserver observer;
281 282
282 observer.Register(content::Source<NavigationController>(controller)); 283 observer.Register(content::Source<NavigationController>(controller));
283 284
284 { 285 {
285 WindowedAuthNeededObserver auth_needed_waiter(controller); 286 WindowedAuthNeededObserver auth_needed_waiter(controller);
286 browser()->OpenURL(OpenURLParams( 287 browser()->OpenURL(OpenURLParams(
287 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 288 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
288 false)); 289 false));
(...skipping 26 matching lines...) Expand all
315 ExpectedTitleFromAuth(ASCIIToUTF16("basicuser"), ASCIIToUTF16("secret")); 316 ExpectedTitleFromAuth(ASCIIToUTF16("basicuser"), ASCIIToUTF16("secret"));
316 ui_test_utils::TitleWatcher title_watcher(contents, expected_title); 317 ui_test_utils::TitleWatcher title_watcher(contents, expected_title);
317 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); 318 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle());
318 } 319 }
319 320
320 // Test that "Digest" HTTP authentication works. 321 // Test that "Digest" HTTP authentication works.
321 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestDigestAuth) { 322 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestDigestAuth) {
322 ASSERT_TRUE(test_server()->Start()); 323 ASSERT_TRUE(test_server()->Start());
323 GURL test_page = test_server()->GetURL(kAuthDigestPage); 324 GURL test_page = test_server()->GetURL(kAuthDigestPage);
324 325
325 content::WebContents* contents = browser()->GetActiveWebContents(); 326 content::WebContents* contents = chrome::GetActiveWebContents(browser());
326 NavigationController* controller = &contents->GetController(); 327 NavigationController* controller = &contents->GetController();
327 LoginPromptBrowserTestObserver observer; 328 LoginPromptBrowserTestObserver observer;
328 329
329 observer.Register(content::Source<NavigationController>(controller)); 330 observer.Register(content::Source<NavigationController>(controller));
330 331
331 { 332 {
332 WindowedAuthNeededObserver auth_needed_waiter(controller); 333 WindowedAuthNeededObserver auth_needed_waiter(controller);
333 browser()->OpenURL(OpenURLParams( 334 browser()->OpenURL(OpenURLParams(
334 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 335 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
335 false)); 336 false));
(...skipping 26 matching lines...) Expand all
362 auth_supplied_waiter.Wait(); 363 auth_supplied_waiter.Wait();
363 364
364 string16 expected_title = ExpectedTitleFromAuth(username, password); 365 string16 expected_title = ExpectedTitleFromAuth(username, password);
365 ui_test_utils::TitleWatcher title_watcher(contents, expected_title); 366 ui_test_utils::TitleWatcher title_watcher(contents, expected_title);
366 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle()); 367 EXPECT_EQ(expected_title, title_watcher.WaitAndGetTitle());
367 } 368 }
368 369
369 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestTwoAuths) { 370 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestTwoAuths) {
370 ASSERT_TRUE(test_server()->Start()); 371 ASSERT_TRUE(test_server()->Start());
371 372
372 content::WebContents* contents1 = browser()->GetActiveWebContents(); 373 content::WebContents* contents1 = chrome::GetActiveWebContents(browser());
373 NavigationController* controller1 = &contents1->GetController(); 374 NavigationController* controller1 = &contents1->GetController();
374 LoginPromptBrowserTestObserver observer; 375 LoginPromptBrowserTestObserver observer;
375 376
376 observer.Register(content::Source<NavigationController>(controller1)); 377 observer.Register(content::Source<NavigationController>(controller1));
377 378
378 // Open a new tab. 379 // Open a new tab.
379 ui_test_utils::NavigateToURLWithDisposition( 380 ui_test_utils::NavigateToURLWithDisposition(
380 browser(), 381 browser(),
381 GURL("about:blank"), 382 GURL("about:blank"),
382 NEW_FOREGROUND_TAB, 383 NEW_FOREGROUND_TAB,
383 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 384 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
384 385
385 content::WebContents* contents2 = browser()->GetActiveWebContents(); 386 content::WebContents* contents2 = chrome::GetActiveWebContents(browser());
386 ASSERT_NE(contents1, contents2); 387 ASSERT_NE(contents1, contents2);
387 NavigationController* controller2 = &contents2->GetController(); 388 NavigationController* controller2 = &contents2->GetController();
388 observer.Register(content::Source<NavigationController>(controller2)); 389 observer.Register(content::Source<NavigationController>(controller2));
389 390
390 { 391 {
391 WindowedAuthNeededObserver auth_needed_waiter(controller1); 392 WindowedAuthNeededObserver auth_needed_waiter(controller1);
392 contents1->OpenURL(OpenURLParams( 393 contents1->OpenURL(OpenURLParams(
393 test_server()->GetURL(kAuthBasicPage), Referrer(), 394 test_server()->GetURL(kAuthBasicPage), Referrer(),
394 CURRENT_TAB, content::PAGE_TRANSITION_TYPED, false)); 395 CURRENT_TAB, content::PAGE_TRANSITION_TYPED, false));
395 auth_needed_waiter.Wait(); 396 auth_needed_waiter.Wait();
(...skipping 27 matching lines...) Expand all
423 } 424 }
424 425
425 // Test login prompt cancellation. 426 // Test login prompt cancellation.
426 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestCancelAuth) { 427 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, TestCancelAuth) {
427 ASSERT_TRUE(test_server()->Start()); 428 ASSERT_TRUE(test_server()->Start());
428 GURL auth_page = test_server()->GetURL(kAuthBasicPage); 429 GURL auth_page = test_server()->GetURL(kAuthBasicPage);
429 GURL no_auth_page_1 = test_server()->GetURL("a"); 430 GURL no_auth_page_1 = test_server()->GetURL("a");
430 GURL no_auth_page_2 = test_server()->GetURL("b"); 431 GURL no_auth_page_2 = test_server()->GetURL("b");
431 GURL no_auth_page_3 = test_server()->GetURL("c"); 432 GURL no_auth_page_3 = test_server()->GetURL("c");
432 433
433 content::WebContents* contents = browser()->GetActiveWebContents(); 434 content::WebContents* contents = chrome::GetActiveWebContents(browser());
434 NavigationController* controller = &contents->GetController(); 435 NavigationController* controller = &contents->GetController();
435 436
436 LoginPromptBrowserTestObserver observer; 437 LoginPromptBrowserTestObserver observer;
437 observer.Register(content::Source<NavigationController>(controller)); 438 observer.Register(content::Source<NavigationController>(controller));
438 439
439 // First navigate to an unauthenticated page so we have something to 440 // First navigate to an unauthenticated page so we have something to
440 // go back to. 441 // go back to.
441 ui_test_utils::NavigateToURL(browser(), no_auth_page_1); 442 ui_test_utils::NavigateToURL(browser(), no_auth_page_1);
442 443
443 // Navigating while auth is requested is the same as cancelling. 444 // Navigating while auth is requested is the same as cancelling.
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
519 520
520 // Test handling of resources that require authentication even though 521 // Test handling of resources that require authentication even though
521 // the page they are included on doesn't. In this case we should only 522 // the page they are included on doesn't. In this case we should only
522 // present the minimal number of prompts necessary for successfully 523 // present the minimal number of prompts necessary for successfully
523 // displaying the page. First we check whether cancelling works as 524 // displaying the page. First we check whether cancelling works as
524 // expected. 525 // expected.
525 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmCancellation) { 526 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmCancellation) {
526 ASSERT_TRUE(test_server()->Start()); 527 ASSERT_TRUE(test_server()->Start());
527 GURL test_page = test_server()->GetURL(kMultiRealmTestPage); 528 GURL test_page = test_server()->GetURL(kMultiRealmTestPage);
528 529
529 content::WebContents* contents = browser()->GetActiveWebContents(); 530 content::WebContents* contents = chrome::GetActiveWebContents(browser());
530 NavigationController* controller = &contents->GetController(); 531 NavigationController* controller = &contents->GetController();
531 LoginPromptBrowserTestObserver observer; 532 LoginPromptBrowserTestObserver observer;
532 533
533 observer.Register(content::Source<NavigationController>(controller)); 534 observer.Register(content::Source<NavigationController>(controller));
534 535
535 WindowedLoadStopObserver load_stop_waiter(controller, 1); 536 WindowedLoadStopObserver load_stop_waiter(controller, 1);
536 537
537 { 538 {
538 WindowedAuthNeededObserver auth_needed_waiter(controller); 539 WindowedAuthNeededObserver auth_needed_waiter(controller);
539 browser()->OpenURL(OpenURLParams( 540 browser()->OpenURL(OpenURLParams(
(...skipping 29 matching lines...) Expand all
569 EXPECT_LT(0, observer.auth_cancelled_count_); 570 EXPECT_LT(0, observer.auth_cancelled_count_);
570 EXPECT_TRUE(test_server()->Stop()); 571 EXPECT_TRUE(test_server()->Stop());
571 } 572 }
572 573
573 // Similar to the MultipleRealmCancellation test above, but tests 574 // Similar to the MultipleRealmCancellation test above, but tests
574 // whether supplying credentials work as exepcted. 575 // whether supplying credentials work as exepcted.
575 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmConfirmation) { 576 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, MultipleRealmConfirmation) {
576 ASSERT_TRUE(test_server()->Start()); 577 ASSERT_TRUE(test_server()->Start());
577 GURL test_page = test_server()->GetURL(kMultiRealmTestPage); 578 GURL test_page = test_server()->GetURL(kMultiRealmTestPage);
578 579
579 content::WebContents* contents = browser()->GetActiveWebContents(); 580 content::WebContents* contents = chrome::GetActiveWebContents(browser());
580 NavigationController* controller = &contents->GetController(); 581 NavigationController* controller = &contents->GetController();
581 LoginPromptBrowserTestObserver observer; 582 LoginPromptBrowserTestObserver observer;
582 583
583 observer.Register(content::Source<NavigationController>(controller)); 584 observer.Register(content::Source<NavigationController>(controller));
584 585
585 WindowedLoadStopObserver load_stop_waiter(controller, 1); 586 WindowedLoadStopObserver load_stop_waiter(controller, 1);
586 int n_handlers = 0; 587 int n_handlers = 0;
587 588
588 { 589 {
589 WindowedAuthNeededObserver auth_needed_waiter(controller); 590 WindowedAuthNeededObserver auth_needed_waiter(controller);
(...skipping 29 matching lines...) Expand all
619 EXPECT_EQ(0, observer.auth_cancelled_count_); 620 EXPECT_EQ(0, observer.auth_cancelled_count_);
620 EXPECT_TRUE(test_server()->Stop()); 621 EXPECT_TRUE(test_server()->Stop());
621 } 622 }
622 623
623 // Testing for recovery from an incorrect password for the case where 624 // Testing for recovery from an incorrect password for the case where
624 // there are multiple authenticated resources. 625 // there are multiple authenticated resources.
625 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, IncorrectConfirmation) { 626 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, IncorrectConfirmation) {
626 ASSERT_TRUE(test_server()->Start()); 627 ASSERT_TRUE(test_server()->Start());
627 GURL test_page = test_server()->GetURL(kSingleRealmTestPage); 628 GURL test_page = test_server()->GetURL(kSingleRealmTestPage);
628 629
629 content::WebContents* contents = browser()->GetActiveWebContents(); 630 content::WebContents* contents = chrome::GetActiveWebContents(browser());
630 NavigationController* controller = &contents->GetController(); 631 NavigationController* controller = &contents->GetController();
631 LoginPromptBrowserTestObserver observer; 632 LoginPromptBrowserTestObserver observer;
632 633
633 observer.Register(content::Source<NavigationController>(controller)); 634 observer.Register(content::Source<NavigationController>(controller));
634 635
635 { 636 {
636 WindowedAuthNeededObserver auth_needed_waiter(controller); 637 WindowedAuthNeededObserver auth_needed_waiter(controller);
637 browser()->OpenURL(OpenURLParams( 638 browser()->OpenURL(OpenURLParams(
638 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED, 639 test_page, Referrer(), CURRENT_TAB, content::PAGE_TRANSITION_TYPED,
639 false)); 640 false));
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
688 689
689 // If the favicon is an authenticated resource, we shouldn't prompt 690 // If the favicon is an authenticated resource, we shouldn't prompt
690 // for credentials. The same URL, if requested elsewhere should 691 // for credentials. The same URL, if requested elsewhere should
691 // prompt for credentials. 692 // prompt for credentials.
692 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, NoLoginPromptForFavicon) { 693 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, NoLoginPromptForFavicon) {
693 const char* kFaviconTestPage = "files/login/has_favicon.html"; 694 const char* kFaviconTestPage = "files/login/has_favicon.html";
694 const char* kFaviconResource = "auth-basic/favicon.gif"; 695 const char* kFaviconResource = "auth-basic/favicon.gif";
695 696
696 ASSERT_TRUE(test_server()->Start()); 697 ASSERT_TRUE(test_server()->Start());
697 698
698 content::WebContents* contents = browser()->GetActiveWebContents(); 699 content::WebContents* contents = chrome::GetActiveWebContents(browser());
699 NavigationController* controller = &contents->GetController(); 700 NavigationController* controller = &contents->GetController();
700 LoginPromptBrowserTestObserver observer; 701 LoginPromptBrowserTestObserver observer;
701 702
702 observer.Register(content::Source<NavigationController>(controller)); 703 observer.Register(content::Source<NavigationController>(controller));
703 704
704 // First load a page that has a favicon that requires 705 // First load a page that has a favicon that requires
705 // authentication. There should be no login prompt. 706 // authentication. There should be no login prompt.
706 { 707 {
707 GURL test_page = test_server()->GetURL(kFaviconTestPage); 708 GURL test_page = test_server()->GetURL(kFaviconTestPage);
708 WindowedLoadStopObserver load_stop_waiter(controller, 1); 709 WindowedLoadStopObserver load_stop_waiter(controller, 1);
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
743 } 744 }
744 745
745 // Block crossdomain subresource login prompting as a phishing defense. 746 // Block crossdomain subresource login prompting as a phishing defense.
746 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, BlockCrossdomainPrompt) { 747 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, BlockCrossdomainPrompt) {
747 const char* kTestPage = "files/login/load_img_from_b.html"; 748 const char* kTestPage = "files/login/load_img_from_b.html";
748 749
749 host_resolver()->AddRule("www.a.com", "127.0.0.1"); 750 host_resolver()->AddRule("www.a.com", "127.0.0.1");
750 host_resolver()->AddRule("www.b.com", "127.0.0.1"); 751 host_resolver()->AddRule("www.b.com", "127.0.0.1");
751 ASSERT_TRUE(test_server()->Start()); 752 ASSERT_TRUE(test_server()->Start());
752 753
753 content::WebContents* contents = browser()->GetActiveWebContents(); 754 content::WebContents* contents = chrome::GetActiveWebContents(browser());
754 NavigationController* controller = &contents->GetController(); 755 NavigationController* controller = &contents->GetController();
755 LoginPromptBrowserTestObserver observer; 756 LoginPromptBrowserTestObserver observer;
756 observer.Register(content::Source<NavigationController>(controller)); 757 observer.Register(content::Source<NavigationController>(controller));
757 758
758 // Load a page that has a cross-domain sub-resource authentication. 759 // Load a page that has a cross-domain sub-resource authentication.
759 // There should be no login prompt. 760 // There should be no login prompt.
760 { 761 {
761 GURL test_page = test_server()->GetURL(kTestPage); 762 GURL test_page = test_server()->GetURL(kTestPage);
762 ASSERT_EQ("127.0.0.1", test_page.host()); 763 ASSERT_EQ("127.0.0.1", test_page.host());
763 764
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
808 } 809 }
809 810
810 EXPECT_EQ(1, observer.auth_needed_count_); 811 EXPECT_EQ(1, observer.auth_needed_count_);
811 EXPECT_TRUE(test_server()->Stop()); 812 EXPECT_TRUE(test_server()->Stop());
812 } 813 }
813 814
814 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, SupplyRedundantAuths) { 815 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, SupplyRedundantAuths) {
815 ASSERT_TRUE(test_server()->Start()); 816 ASSERT_TRUE(test_server()->Start());
816 817
817 // Get NavigationController for tab 1. 818 // Get NavigationController for tab 1.
818 content::WebContents* contents_1 = browser()->GetActiveWebContents(); 819 content::WebContents* contents_1 = chrome::GetActiveWebContents(browser());
819 NavigationController* controller_1 = &contents_1->GetController(); 820 NavigationController* controller_1 = &contents_1->GetController();
820 821
821 // Open a new tab. 822 // Open a new tab.
822 ui_test_utils::NavigateToURLWithDisposition( 823 ui_test_utils::NavigateToURLWithDisposition(
823 browser(), 824 browser(),
824 GURL("about:blank"), 825 GURL("about:blank"),
825 NEW_FOREGROUND_TAB, 826 NEW_FOREGROUND_TAB,
826 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 827 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
827 828
828 // Get NavigationController for tab 2. 829 // Get NavigationController for tab 2.
829 content::WebContents* contents_2 = browser()->GetActiveWebContents(); 830 content::WebContents* contents_2 = chrome::GetActiveWebContents(browser());
830 ASSERT_NE(contents_1, contents_2); 831 ASSERT_NE(contents_1, contents_2);
831 NavigationController* controller_2 = &contents_2->GetController(); 832 NavigationController* controller_2 = &contents_2->GetController();
832 833
833 LoginPromptBrowserTestObserver observer; 834 LoginPromptBrowserTestObserver observer;
834 observer.Register(content::Source<NavigationController>(controller_1)); 835 observer.Register(content::Source<NavigationController>(controller_1));
835 observer.Register(content::Source<NavigationController>(controller_2)); 836 observer.Register(content::Source<NavigationController>(controller_2));
836 837
837 { 838 {
838 // Open different auth urls in each tab. 839 // Open different auth urls in each tab.
839 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1); 840 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1);
(...skipping 30 matching lines...) Expand all
870 EXPECT_EQ(2, observer.auth_needed_count_); 871 EXPECT_EQ(2, observer.auth_needed_count_);
871 EXPECT_EQ(2, observer.auth_supplied_count_); 872 EXPECT_EQ(2, observer.auth_supplied_count_);
872 EXPECT_EQ(0, observer.auth_cancelled_count_); 873 EXPECT_EQ(0, observer.auth_cancelled_count_);
873 EXPECT_TRUE(test_server()->Stop()); 874 EXPECT_TRUE(test_server()->Stop());
874 } 875 }
875 876
876 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, CancelRedundantAuths) { 877 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, CancelRedundantAuths) {
877 ASSERT_TRUE(test_server()->Start()); 878 ASSERT_TRUE(test_server()->Start());
878 879
879 // Get NavigationController for tab 1. 880 // Get NavigationController for tab 1.
880 content::WebContents* contents_1 = browser()->GetActiveWebContents(); 881 content::WebContents* contents_1 = chrome::GetActiveWebContents(browser());
881 NavigationController* controller_1 = &contents_1->GetController(); 882 NavigationController* controller_1 = &contents_1->GetController();
882 883
883 // Open a new tab. 884 // Open a new tab.
884 ui_test_utils::NavigateToURLWithDisposition( 885 ui_test_utils::NavigateToURLWithDisposition(
885 browser(), 886 browser(),
886 GURL("about:blank"), 887 GURL("about:blank"),
887 NEW_FOREGROUND_TAB, 888 NEW_FOREGROUND_TAB,
888 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB); 889 ui_test_utils::BROWSER_TEST_WAIT_FOR_TAB);
889 890
890 // Get NavigationController for tab 2. 891 // Get NavigationController for tab 2.
891 content::WebContents* contents_2 = browser()->GetActiveWebContents(); 892 content::WebContents* contents_2 = chrome::GetActiveWebContents(browser());
892 ASSERT_NE(contents_1, contents_2); 893 ASSERT_NE(contents_1, contents_2);
893 NavigationController* controller_2 = &contents_2->GetController(); 894 NavigationController* controller_2 = &contents_2->GetController();
894 895
895 LoginPromptBrowserTestObserver observer; 896 LoginPromptBrowserTestObserver observer;
896 observer.Register(content::Source<NavigationController>(controller_1)); 897 observer.Register(content::Source<NavigationController>(controller_1));
897 observer.Register(content::Source<NavigationController>(controller_2)); 898 observer.Register(content::Source<NavigationController>(controller_2));
898 899
899 { 900 {
900 // Open different auth urls in each tab. 901 // Open different auth urls in each tab.
901 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1); 902 WindowedAuthNeededObserver auth_needed_waiter_1(controller_1);
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
933 EXPECT_EQ(0, observer.auth_supplied_count_); 934 EXPECT_EQ(0, observer.auth_supplied_count_);
934 EXPECT_EQ(2, observer.auth_cancelled_count_); 935 EXPECT_EQ(2, observer.auth_cancelled_count_);
935 EXPECT_TRUE(test_server()->Stop()); 936 EXPECT_TRUE(test_server()->Stop());
936 } 937 }
937 938
938 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest, 939 IN_PROC_BROWSER_TEST_F(LoginPromptBrowserTest,
939 SupplyRedundantAuthsMultiProfile) { 940 SupplyRedundantAuthsMultiProfile) {
940 ASSERT_TRUE(test_server()->Start()); 941 ASSERT_TRUE(test_server()->Start());
941 942
942 // Get NavigationController for regular tab. 943 // Get NavigationController for regular tab.
943 content::WebContents* contents = browser()->GetActiveWebContents(); 944 content::WebContents* contents = chrome::GetActiveWebContents(browser());
944 NavigationController* controller = &contents->GetController(); 945 NavigationController* controller = &contents->GetController();
945 946
946 // Open an incognito window. 947 // Open an incognito window.
947 Browser* browser_incognito = CreateIncognitoBrowser(); 948 Browser* browser_incognito = CreateIncognitoBrowser();
948 949
949 // Get NavigationController for incognito tab. 950 // Get NavigationController for incognito tab.
950 content::WebContents* contents_incognito = 951 content::WebContents* contents_incognito =
951 browser_incognito->GetActiveWebContents(); 952 chrome::GetActiveWebContents(browser_incognito);
952 ASSERT_NE(contents, contents_incognito); 953 ASSERT_NE(contents, contents_incognito);
953 NavigationController* controller_incognito = 954 NavigationController* controller_incognito =
954 &contents_incognito->GetController(); 955 &contents_incognito->GetController();
955 956
956 LoginPromptBrowserTestObserver observer; 957 LoginPromptBrowserTestObserver observer;
957 observer.Register(content::Source<NavigationController>(controller)); 958 observer.Register(content::Source<NavigationController>(controller));
958 LoginPromptBrowserTestObserver observer_incognito; 959 LoginPromptBrowserTestObserver observer_incognito;
959 observer_incognito.Register( 960 observer_incognito.Register(
960 content::Source<NavigationController>(controller_incognito)); 961 content::Source<NavigationController>(controller_incognito));
961 962
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
1001 EXPECT_EQ(1, observer.auth_needed_count_); 1002 EXPECT_EQ(1, observer.auth_needed_count_);
1002 EXPECT_EQ(1, observer.auth_supplied_count_); 1003 EXPECT_EQ(1, observer.auth_supplied_count_);
1003 EXPECT_EQ(0, observer.auth_cancelled_count_); 1004 EXPECT_EQ(0, observer.auth_cancelled_count_);
1004 EXPECT_EQ(1, observer_incognito.auth_needed_count_); 1005 EXPECT_EQ(1, observer_incognito.auth_needed_count_);
1005 EXPECT_EQ(0, observer_incognito.auth_supplied_count_); 1006 EXPECT_EQ(0, observer_incognito.auth_supplied_count_);
1006 EXPECT_EQ(0, observer_incognito.auth_cancelled_count_); 1007 EXPECT_EQ(0, observer_incognito.auth_cancelled_count_);
1007 EXPECT_TRUE(test_server()->Stop()); 1008 EXPECT_TRUE(test_server()->Stop());
1008 } 1009 }
1009 1010
1010 } // namespace 1011 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698