| Index: chrome/test/base/browser_with_test_window_test.cc
|
| ===================================================================
|
| --- chrome/test/base/browser_with_test_window_test.cc (revision 136877)
|
| +++ chrome/test/base/browser_with_test_window_test.cc (working copy)
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "chrome/test/base/browser_with_test_window_test.h"
|
|
|
| +#include "base/synchronization/waitable_event.h"
|
| #include "chrome/browser/ui/browser_navigator.h"
|
| #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h"
|
| #include "chrome/browser/ui/tabs/tab_strip_model.h"
|
| @@ -34,9 +35,11 @@
|
|
|
| BrowserWithTestWindowTest::BrowserWithTestWindowTest()
|
| : ui_thread_(BrowserThread::UI, message_loop()),
|
| + db_thread_(BrowserThread::DB),
|
| file_thread_(BrowserThread::FILE, message_loop()),
|
| file_user_blocking_thread_(
|
| BrowserThread::FILE_USER_BLOCKING, message_loop()) {
|
| + db_thread_.Start();
|
| }
|
|
|
| void BrowserWithTestWindowTest::SetUp() {
|
| @@ -72,6 +75,13 @@
|
| DestroyBrowser();
|
| profile_.reset(NULL);
|
|
|
| + // Schedule another task on the DB thread to notify us that it's safe to
|
| + // carry on with the test.
|
| + base::WaitableEvent done(false, false);
|
| + BrowserThread::PostTask(BrowserThread::DB, FROM_HERE,
|
| + base::Bind(&base::WaitableEvent::Signal, base::Unretained(&done)));
|
| + done.Wait();
|
| + db_thread_.Stop();
|
| MessageLoop::current()->PostTask(FROM_HERE, MessageLoop::QuitClosure());
|
| MessageLoop::current()->Run();
|
| }
|
|
|