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

Side by Side Diff: chrome/browser/browser_browsertest.cc

Issue 6693054: Get rid of extensions dependency from content\browser. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | chrome/browser/chrome_content_browser_client.h » ('j') | 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <string> 5 #include <string>
6 6
7 #include "base/compiler_specific.h" 7 #include "base/compiler_specific.h"
8 #include "base/file_path.h" 8 #include "base/file_path.h"
9 #include "base/sys_info.h" 9 #include "base/sys_info.h"
10 #include "base/utf_string_conversions.h" 10 #include "base/utf_string_conversions.h"
11 #include "chrome/app/chrome_command_ids.h" 11 #include "chrome/app/chrome_command_ids.h"
12 #include "chrome/browser/defaults.h" 12 #include "chrome/browser/defaults.h"
13 #include "chrome/browser/extensions/extension_browsertest.h" 13 #include "chrome/browser/extensions/extension_browsertest.h"
14 #include "chrome/browser/extensions/extension_service.h" 14 #include "chrome/browser/extensions/extension_service.h"
15 #include "chrome/browser/extensions/extension_tab_helper.h"
15 #include "chrome/browser/profiles/profile.h" 16 #include "chrome/browser/profiles/profile.h"
16 #include "chrome/browser/tabs/pinned_tab_codec.h" 17 #include "chrome/browser/tabs/pinned_tab_codec.h"
17 #include "chrome/browser/tabs/tab_strip_model.h" 18 #include "chrome/browser/tabs/tab_strip_model.h"
18 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog.h" 19 #include "chrome/browser/ui/app_modal_dialogs/app_modal_dialog.h"
19 #include "chrome/browser/ui/app_modal_dialogs/js_modal_dialog.h" 20 #include "chrome/browser/ui/app_modal_dialogs/js_modal_dialog.h"
20 #include "chrome/browser/ui/app_modal_dialogs/native_app_modal_dialog.h" 21 #include "chrome/browser/ui/app_modal_dialogs/native_app_modal_dialog.h"
21 #include "chrome/browser/ui/browser.h" 22 #include "chrome/browser/ui/browser.h"
22 #include "chrome/browser/ui/browser_init.h" 23 #include "chrome/browser/ui/browser_init.h"
23 #include "chrome/browser/ui/browser_list.h" 24 #include "chrome/browser/ui/browser_list.h"
24 #include "chrome/browser/ui/browser_navigator.h" 25 #include "chrome/browser/ui/browser_navigator.h"
(...skipping 458 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 484
484 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("app/"))); 485 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("app/")));
485 486
486 const Extension* extension_app = GetExtension(); 487 const Extension* extension_app = GetExtension();
487 488
488 ui_test_utils::NavigateToURL(browser(), url); 489 ui_test_utils::NavigateToURL(browser(), url);
489 490
490 TabContentsWrapper* app_contents = 491 TabContentsWrapper* app_contents =
491 Browser::TabContentsFactory(browser()->profile(), NULL, 492 Browser::TabContentsFactory(browser()->profile(), NULL,
492 MSG_ROUTING_NONE, NULL, NULL); 493 MSG_ROUTING_NONE, NULL, NULL);
493 app_contents->tab_contents()->SetExtensionApp(extension_app); 494 app_contents->extension_tab_helper()->SetExtensionApp(extension_app);
494 495
495 model->AddTabContents(app_contents, 0, 0, TabStripModel::ADD_NONE); 496 model->AddTabContents(app_contents, 0, 0, TabStripModel::ADD_NONE);
496 model->SetTabPinned(0, true); 497 model->SetTabPinned(0, true);
497 ui_test_utils::NavigateToURL(browser(), url); 498 ui_test_utils::NavigateToURL(browser(), url);
498 499
499 MockTabStripModelObserver observer; 500 MockTabStripModelObserver observer;
500 model->AddObserver(&observer); 501 model->AddObserver(&observer);
501 502
502 // Uninstall the extension and make sure TabClosing is sent. 503 // Uninstall the extension and make sure TabClosing is sent.
503 ExtensionService* service = browser()->profile()->GetExtensionService(); 504 ExtensionService* service = browser()->profile()->GetExtensionService();
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
604 // Add an pinned app tab. 605 // Add an pinned app tab.
605 host_resolver()->AddRule("www.example.com", "127.0.0.1"); 606 host_resolver()->AddRule("www.example.com", "127.0.0.1");
606 GURL url(test_server()->GetURL("empty.html")); 607 GURL url(test_server()->GetURL("empty.html"));
607 TabStripModel* model = browser()->tabstrip_model(); 608 TabStripModel* model = browser()->tabstrip_model();
608 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("app/"))); 609 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("app/")));
609 const Extension* extension_app = GetExtension(); 610 const Extension* extension_app = GetExtension();
610 ui_test_utils::NavigateToURL(browser(), url); 611 ui_test_utils::NavigateToURL(browser(), url);
611 TabContentsWrapper* app_contents = 612 TabContentsWrapper* app_contents =
612 Browser::TabContentsFactory(browser()->profile(), NULL, 613 Browser::TabContentsFactory(browser()->profile(), NULL,
613 MSG_ROUTING_NONE, NULL, NULL); 614 MSG_ROUTING_NONE, NULL, NULL);
614 app_contents->tab_contents()->SetExtensionApp(extension_app); 615 app_contents->extension_tab_helper()->SetExtensionApp(extension_app);
615 model->AddTabContents(app_contents, 0, 0, TabStripModel::ADD_NONE); 616 model->AddTabContents(app_contents, 0, 0, TabStripModel::ADD_NONE);
616 model->SetTabPinned(0, true); 617 model->SetTabPinned(0, true);
617 ui_test_utils::NavigateToURL(browser(), url); 618 ui_test_utils::NavigateToURL(browser(), url);
618 619
619 // Add a non pinned tab. 620 // Add a non pinned tab.
620 browser()->NewTab(); 621 browser()->NewTab();
621 622
622 // Add a pinned non-app tab. 623 // Add a pinned non-app tab.
623 browser()->NewTab(); 624 browser()->NewTab();
624 ui_test_utils::NavigateToURL(browser(), GURL("about:blank")); 625 ui_test_utils::NavigateToURL(browser(), GURL("about:blank"));
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
657 EXPECT_FALSE(new_model->IsAppTab(2)); 658 EXPECT_FALSE(new_model->IsAppTab(2));
658 659
659 EXPECT_TRUE(new_model->IsTabPinned(0)); 660 EXPECT_TRUE(new_model->IsTabPinned(0));
660 EXPECT_TRUE(new_model->IsTabPinned(1)); 661 EXPECT_TRUE(new_model->IsTabPinned(1));
661 EXPECT_FALSE(new_model->IsTabPinned(2)); 662 EXPECT_FALSE(new_model->IsTabPinned(2));
662 663
663 EXPECT_EQ(browser()->GetHomePage(), 664 EXPECT_EQ(browser()->GetHomePage(),
664 new_model->GetTabContentsAt(2)->tab_contents()->GetURL()); 665 new_model->GetTabContentsAt(2)->tab_contents()->GetURL());
665 666
666 EXPECT_TRUE( 667 EXPECT_TRUE(
667 new_model->GetTabContentsAt(0)->tab_contents()->extension_app() == 668 new_model->GetTabContentsAt(0)->extension_tab_helper()->extension_app() ==
668 extension_app); 669 extension_app);
669 } 670 }
670 #endif // !defined(OS_CHROMEOS) 671 #endif // !defined(OS_CHROMEOS)
671 672
672 // This test verifies we don't crash when closing the last window and the app 673 // This test verifies we don't crash when closing the last window and the app
673 // menu is showing. 674 // menu is showing.
674 IN_PROC_BROWSER_TEST_F(BrowserTest, CloseWithAppMenuOpen) { 675 IN_PROC_BROWSER_TEST_F(BrowserTest, CloseWithAppMenuOpen) {
675 if (browser_defaults::kBrowserAliveWithNoWindows) 676 if (browser_defaults::kBrowserAliveWithNoWindows)
676 return; 677 return;
677 678
(...skipping 11 matching lines...) Expand all
689 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("app/"))); 690 ASSERT_TRUE(LoadExtension(test_data_dir_.AppendASCII("app/")));
690 const Extension* extension_app = GetExtension(); 691 const Extension* extension_app = GetExtension();
691 692
692 // Launch it in a window, as AppLauncherHandler::HandleLaunchApp() would. 693 // Launch it in a window, as AppLauncherHandler::HandleLaunchApp() would.
693 TabContents* app_window = Browser::OpenApplication( 694 TabContents* app_window = Browser::OpenApplication(
694 browser()->profile(), extension_app, extension_misc::LAUNCH_WINDOW, NULL); 695 browser()->profile(), extension_app, extension_misc::LAUNCH_WINDOW, NULL);
695 ASSERT_TRUE(app_window); 696 ASSERT_TRUE(app_window);
696 697
697 // Apps launched in a window from the NTP do not have extension_app set in 698 // Apps launched in a window from the NTP do not have extension_app set in
698 // tab contents. 699 // tab contents.
699 EXPECT_FALSE(app_window->extension_app()); 700 TabContentsWrapper* wrapper =
701 TabContentsWrapper::GetCurrentWrapperForContents(app_window);
702 EXPECT_FALSE(wrapper->extension_tab_helper()->extension_app());
700 EXPECT_EQ(extension_app->GetFullLaunchURL(), app_window->GetURL()); 703 EXPECT_EQ(extension_app->GetFullLaunchURL(), app_window->GetURL());
701 704
702 // The launch should have created a new browser. 705 // The launch should have created a new browser.
703 ASSERT_EQ(2u, BrowserList::GetBrowserCount(browser()->profile())); 706 ASSERT_EQ(2u, BrowserList::GetBrowserCount(browser()->profile()));
704 707
705 // Find the new browser. 708 // Find the new browser.
706 Browser* new_browser = NULL; 709 Browser* new_browser = NULL;
707 for (BrowserList::const_iterator i = BrowserList::begin(); 710 for (BrowserList::const_iterator i = BrowserList::begin();
708 i != BrowserList::end() && !new_browser; ++i) { 711 i != BrowserList::end() && !new_browser; ++i) {
709 if (*i != browser()) 712 if (*i != browser())
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
798 801
799 // The normal browser should now have four. 802 // The normal browser should now have four.
800 EXPECT_EQ(4, browser()->tab_count()); 803 EXPECT_EQ(4, browser()->tab_count());
801 804
802 // Close the additional browsers. 805 // Close the additional browsers.
803 popup_browser->CloseAllTabs(); 806 popup_browser->CloseAllTabs();
804 app_browser->CloseAllTabs(); 807 app_browser->CloseAllTabs();
805 app_popup_browser->CloseAllTabs(); 808 app_popup_browser->CloseAllTabs();
806 } 809 }
807 #endif 810 #endif
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chrome_content_browser_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698