Chromium Code Reviews| Index: chrome_frame/test/net/fake_external_tab.cc |
| diff --git a/chrome_frame/test/net/fake_external_tab.cc b/chrome_frame/test/net/fake_external_tab.cc |
| index b33ad1ee9f146238c43018ac30dfca715373a3fc..ee10b46b10f5cd10469a66a64b157c5f72269503 100644 |
| --- a/chrome_frame/test/net/fake_external_tab.cc |
| +++ b/chrome_frame/test/net/fake_external_tab.cc |
| @@ -23,10 +23,12 @@ |
| #include "base/system_monitor/system_monitor.h" |
| #include "base/test/test_timeouts.h" |
| #include "base/threading/platform_thread.h" |
| +#include "base/threading/thread.h" |
| #include "base/win/scoped_com_initializer.h" |
| #include "base/win/scoped_comptr.h" |
| #include "base/win/scoped_handle.h" |
| #include "chrome/browser/automation/automation_provider_list.h" |
| +#include "chrome/browser/browser_process_impl.h" // TODO(joi): Remove |
| #include "chrome/browser/chrome_content_browser_client.h" |
| #include "chrome/browser/prefs/browser_prefs.h" |
| #include "chrome/browser/prefs/pref_service.h" |
| @@ -52,6 +54,7 @@ |
| #include "content/public/browser/render_process_host.h" |
| #include "content/public/common/content_client.h" |
| #include "content/public/common/content_paths.h" |
| +#include "content/test/test_browser_thread.h" // TODO(joi): Remove |
| #include "testing/gtest/include/gtest/gtest.h" |
| #include "ui/base/resource/resource_bundle.h" |
| #include "ui/base/ui_base_paths.h" |
| @@ -273,8 +276,6 @@ void FakeExternalTab::Initialize() { |
| browser_process_->local_state()->RegisterBooleanPref( |
| prefs::kMetricsReportingEnabled, false); |
| - FilePath profile_path(ProfileManager::GetDefaultProfileDir(user_data())); |
| - |
| // Initialize the content client which that code uses to talk to Chrome. |
| content::SetContentClient(&g_chrome_content_client.Get()); |
| @@ -283,14 +284,12 @@ void FakeExternalTab::Initialize() { |
| content::GetContentClient()->set_browser(&g_browser_client.Get()); |
| content::GetContentClient()->set_renderer(&g_renderer_client.Get()); |
| +} |
| +void FakeExternalTab::InitializePostThreadsCreated() { |
| + FilePath profile_path(ProfileManager::GetDefaultProfileDir(user_data())); |
| Profile* profile = |
| g_browser_process->profile_manager()->GetProfile(profile_path); |
| - |
| - // Create the child threads. |
| - g_browser_process->db_thread(); |
| - g_browser_process->file_thread(); |
| - g_browser_process->io_thread(); |
| } |
| void FakeExternalTab::Shutdown() { |
| @@ -301,16 +300,39 @@ void FakeExternalTab::Shutdown() { |
| ResourceBundle::CleanupSharedInstance(); |
| } |
| +// TODO(joi): Remove! |
| +class ChromeFrameFriendOfBrowserProcessImpl { |
| + public: |
| + static void CreateIOThreadState() { |
| + reinterpret_cast<BrowserProcessImpl*>( |
| + g_browser_process)->CreateIOThreadState(); |
| + } |
| +}; |
| + |
| CFUrlRequestUnittestRunner::CFUrlRequestUnittestRunner(int argc, char** argv) |
| : NetTestSuite(argc, argv), |
| chrome_frame_html_("/chrome_frame", kChromeFrameHtml), |
| registrar_(chrome_frame_test::GetTestBedType()), |
| test_result_(0) { |
| // Register the main thread by instantiating it, but don't call any methods. |
| - main_thread_.reset(new content::DeprecatedBrowserThread( |
| + main_thread_.reset(new content::TestBrowserThread( |
| BrowserThread::UI, MessageLoop::current())); |
| DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
| fake_chrome_.Initialize(); |
| + |
| + db_thread_.reset(new content::TestBrowserThread(BrowserThread::DB)); |
| + db_thread_->Start(); |
| + |
| + file_thread_.reset(new content::TestBrowserThread(BrowserThread::FILE)); |
| + file_thread_->Start(); |
| + |
| + ChromeFrameFriendOfBrowserProcessImpl::CreateIOThreadState(); |
| + |
| + io_thread_.reset(new content::TestBrowserThread(BrowserThread::IO)); |
| + io_thread_->StartIOThread(); |
| + |
| + fake_chrome_.InitializePostThreadsCreated(); |
| + |
| pss_subclass_.reset(new ProcessSingletonSubclass(this)); |
| EXPECT_TRUE(pss_subclass_->Subclass(fake_chrome_.user_data())); |
| StartChromeFrameInHostBrowser(); |
| @@ -587,13 +609,15 @@ const char* IEVersionToString(IEVersion version) { |
| } |
| int main(int argc, char** argv) { |
| - if (chrome_frame_test::GetInstalledIEVersion() >= IE_9) { |
| + // TODO(joi): Remove the "true" part here and fix the log statement below. |
| + if (true || chrome_frame_test::GetInstalledIEVersion() >= IE_9) { |
| // Adding this here as the command line and the logging stuff gets |
| // initialized in the NetTestSuite constructor. Did not want to break that. |
| base::AtExitManager at_exit_manager; |
| CommandLine::Init(argc, argv); |
| CFUrlRequestUnittestRunner::InitializeLogging(); |
| - LOG(INFO) << "Not running ChromeFrame net tests on IE9+"; |
| + LOG(INFO) << "Temporarily not running any ChromeFrame " << |
|
grt (UTC plus 2)
2011/11/25 16:35:55
uber-nit: move '<<' to next line and align with th
Jói
2011/11/25 16:38:11
Done.
|
| + "net tests (http://crbug.com/105435)"; |
| return 0; |
| } |