Index: chrome/browser/sync_file_system/sync_file_system_service_unittest.cc |
diff --git a/chrome/browser/sync_file_system/sync_file_system_service_unittest.cc b/chrome/browser/sync_file_system/sync_file_system_service_unittest.cc |
index 6661bb18d333fb6f7e0b0b682f78be71be3cb5d3..7e3c543f110a13083dc00be85e622a50d2c08c6a 100644 |
--- a/chrome/browser/sync_file_system/sync_file_system_service_unittest.cc |
+++ b/chrome/browser/sync_file_system/sync_file_system_service_unittest.cc |
@@ -15,6 +15,9 @@ |
#include "chrome/browser/sync_file_system/sync_file_system_service.h" |
#include "chrome/browser/sync_file_system/sync_file_system_test_util.h" |
#include "chrome/test/base/testing_profile.h" |
+#include "content/public/browser/browser_thread.h" |
+#include "content/public/test/test_browser_thread_bundle.h" |
+#include "content/public/test/test_utils.h" |
#include "testing/gtest/include/gtest/gtest.h" |
#include "webkit/browser/fileapi/file_system_context.h" |
#include "webkit/browser/fileapi/syncable/canned_syncable_file_system.h" |
@@ -25,6 +28,7 @@ |
#include "webkit/browser/fileapi/syncable/sync_status_code.h" |
#include "webkit/browser/fileapi/syncable/syncable_file_system_util.h" |
+using content::BrowserThread; |
using fileapi::FileSystemURL; |
using fileapi::FileSystemURLSet; |
using ::testing::AnyNumber; |
@@ -63,11 +67,11 @@ void AssignValueAndQuit(base::RunLoop* run_loop, |
} |
// This is called on IO thread. |
-void VerifyFileError(base::WaitableEvent* event, |
+void VerifyFileError(base::RunLoop* run_loop, |
base::PlatformFileError error) { |
- DCHECK(event); |
+ DCHECK(run_loop); |
EXPECT_EQ(base::PLATFORM_FILE_OK, error); |
- event->Signal(); |
+ run_loop->Quit(); |
} |
} // namespace |
@@ -112,16 +116,15 @@ ACTION_P2(MockSyncFileCallback, status, url) { |
class SyncFileSystemServiceTest : public testing::Test { |
protected: |
- SyncFileSystemServiceTest() {} |
- virtual ~SyncFileSystemServiceTest() {} |
+ SyncFileSystemServiceTest() |
+ : thread_bundle_(content::TestBrowserThreadBundle::REAL_FILE_THREAD | |
+ content::TestBrowserThreadBundle::REAL_IO_THREAD) {} |
virtual void SetUp() OVERRIDE { |
- thread_helper_.SetUp(); |
- |
file_system_.reset(new CannedSyncableFileSystem( |
GURL(kOrigin), |
- thread_helper_.io_task_runner(), |
- thread_helper_.file_task_runner())); |
+ BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO), |
+ BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE))); |
local_service_ = new LocalFileSyncService(&profile_); |
remote_service_ = new StrictMock<MockRemoteFileSyncService>; |
@@ -150,10 +153,9 @@ class SyncFileSystemServiceTest : public testing::Test { |
virtual void TearDown() OVERRIDE { |
sync_service_->Shutdown(); |
- |
file_system_->TearDown(); |
RevokeSyncableFileSystem(); |
- thread_helper_.TearDown(); |
+ content::RunAllPendingInMessageLoop(BrowserThread::FILE); |
} |
void InitializeApp() { |
@@ -237,7 +239,7 @@ class SyncFileSystemServiceTest : public testing::Test { |
ScopedEnableSyncFSDirectoryOperation enable_directory_operation_; |
- MultiThreadTestHelper thread_helper_; |
+ content::TestBrowserThreadBundle thread_bundle_; |
TestingProfile profile_; |
scoped_ptr<CannedSyncableFileSystem> file_system_; |
@@ -392,17 +394,20 @@ TEST_F(SyncFileSystemServiceTest, SimpleSyncFlowWithFileBusy) { |
mock_remote_service()->NotifyRemoteChangeQueueUpdated(1); |
// Start a local operation on the same file (to make it BUSY). |
- base::WaitableEvent event(false, false); |
- thread_helper_.io_task_runner()->PostTask( |
- FROM_HERE, base::Bind(&CannedSyncableFileSystem::DoCreateFile, |
- base::Unretained(file_system_.get()), |
- kFile, base::Bind(&VerifyFileError, &event))); |
+ base::RunLoop verify_file_error_run_loop; |
+ BrowserThread::PostTask( |
+ BrowserThread::IO, |
+ FROM_HERE, |
+ base::Bind(&CannedSyncableFileSystem::DoCreateFile, |
+ base::Unretained(file_system_.get()), |
+ kFile, base::Bind(&VerifyFileError, |
+ &verify_file_error_run_loop))); |
run_loop.Run(); |
mock_remote_service()->NotifyRemoteChangeQueueUpdated(0); |
- event.Wait(); |
+ verify_file_error_run_loop.Run(); |
} |
TEST_F(SyncFileSystemServiceTest, GetFileSyncStatus) { |