chrome/browser/chromeos/login/login_utils_browsertest.cc
// Initialization here is important. The UI thread gets the test's
// message loop, as does the file thread (which never actually gets
// started - so this is a way to fake multiple threads on a single
// test thread).  The IO thread does not get the message loop set,
// and is never started.  This is necessary so that we skip various
// bits of initialization that get posted to the IO thread.  We do
// however, at one point in the test, temporarily set the message
// loop for the IO thread.
Initialization here is important. The UI thread gets the test's
message loop, as does the file thread (which never actually gets
started - so this is a way to fake multiple threads on a single
test thread).  The IO thread does not get the message loop set,
and is never started.  This is necessary so that we skip various
bits of initialization that get posted to the IO thread.  We do
however, at one point in the test, temporarily set the message
loop for the IO thread.
Initialization here is important . The UI thread gets the test ' s message loop as does the file thread ( which never actually gets started - so this is a way to fake multiple threads on a single test thread ) . The IO thread does not get the message loop set and is never started . This is necessary so that we skip various bits of initialization that get posted to the IO thread . We do however at one point in the test temporarily set the message loop for the IO thread .
LoginUtilsTest()
      : fake_io_thread_completion_(false, false),
        fake_io_thread_("fake_io_thread"),
        loop_(MessageLoop::TYPE_IO),
        browser_process_(
            static_cast<TestingBrowserProcess*>(g_browser_process)),
        local_state_(browser_process_),
        ui_thread_(BrowserThread::UI, &loop_),
        db_thread_(BrowserThread::DB),
        file_thread_(BrowserThread::FILE, &loop_),
        mock_async_method_caller_(NULL),
        connector_(NULL),
        cryptohome_(NULL),
        prepared_profile_(NULL),
        created_profile_(NULL) {}
LoginUtilsTest ( ) : fake_io_thread_completion_ ( false , false ) , fake_io_thread_ ( " " ) , loop_ ( MessageLoop :: TYPE_IO ) , browser_process_ ( static_cast < TestingBrowserProcess * > ( g_browser_process ) ) , local_state_ ( browser_process_ ) , ui_thread_ ( BrowserThread :: UI , & loop_ ) , db_thread_ ( BrowserThread :: DB ) , file_thread_ ( BrowserThread :: FILE , & loop_ ) , mock_async_method_caller_ ( NULL ) , connector_ ( NULL ) , cryptohome_ ( NULL ) , prepared_profile_ ( NULL ) , created_profile_ ( NULL ) { }
Initialization here is important.
Initialization here is important .