Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chromeos / drive / file_system / operation_test_base.cc
index 6640bca..f4caf87 100644 (file)
@@ -9,40 +9,48 @@
 #include "chrome/browser/chromeos/drive/change_list_loader.h"
 #include "chrome/browser/chromeos/drive/fake_free_disk_space_getter.h"
 #include "chrome/browser/chromeos/drive/file_cache.h"
-#include "chrome/browser/chromeos/drive/file_system/operation_observer.h"
+#include "chrome/browser/chromeos/drive/file_change.h"
+#include "chrome/browser/chromeos/drive/file_system/operation_delegate.h"
 #include "chrome/browser/chromeos/drive/job_scheduler.h"
 #include "chrome/browser/chromeos/drive/resource_metadata.h"
-#include "chrome/browser/chromeos/drive/test_util.h"
 #include "chrome/browser/drive/event_logger.h"
 #include "chrome/browser/drive/fake_drive_service.h"
 #include "chrome/browser/drive/test_util.h"
 #include "content/public/browser/browser_thread.h"
+#include "content/public/test/test_utils.h"
 #include "google_apis/drive/test_util.h"
 
 namespace drive {
 namespace file_system {
 
-OperationTestBase::LoggingObserver::LoggingObserver() {
+OperationTestBase::LoggingDelegate::LoggingDelegate() {
 }
 
-OperationTestBase::LoggingObserver::~LoggingObserver() {
+OperationTestBase::LoggingDelegate::~LoggingDelegate() {
 }
 
-void OperationTestBase::LoggingObserver::OnDirectoryChangedByOperation(
-    const base::FilePath& path) {
-  changed_paths_.insert(path);
+void OperationTestBase::LoggingDelegate::OnFileChangedByOperation(
+    const FileChange& changed_files) {
+  changed_files_.Apply(changed_files);
 }
 
-void OperationTestBase::LoggingObserver::OnEntryUpdatedByOperation(
+void OperationTestBase::LoggingDelegate::OnEntryUpdatedByOperation(
     const std::string& local_id) {
   updated_local_ids_.insert(local_id);
 }
 
-void OperationTestBase::LoggingObserver::OnDriveSyncError(
+void OperationTestBase::LoggingDelegate::OnDriveSyncError(
     DriveSyncErrorType type, const std::string& local_id) {
   drive_sync_errors_.push_back(type);
 }
 
+bool OperationTestBase::LoggingDelegate::WaitForSyncComplete(
+    const std::string& local_id,
+    const FileOperationCallback& callback) {
+  return wait_for_sync_complete_handler_.is_null() ?
+      false : wait_for_sync_complete_handler_.Run(local_id, callback);
+}
+
 OperationTestBase::OperationTestBase() {
 }
 
@@ -84,7 +92,7 @@ void OperationTestBase::SetUp() {
       base::Bind(&internal::ResourceMetadataStorage::Initialize,
                  base::Unretained(metadata_storage_.get())),
       google_apis::test_util::CreateCopyResultCallback(&success));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   ASSERT_TRUE(success);
 
   fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter);
@@ -99,7 +107,7 @@ void OperationTestBase::SetUp() {
       base::Bind(&internal::FileCache::Initialize,
                  base::Unretained(cache_.get())),
       google_apis::test_util::CreateCopyResultCallback(&success));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   ASSERT_TRUE(success);
 
   metadata_.reset(new internal::ResourceMetadata(metadata_storage_.get(),
@@ -113,7 +121,7 @@ void OperationTestBase::SetUp() {
       base::Bind(&internal::ResourceMetadata::Initialize,
                  base::Unretained(metadata_.get())),
       google_apis::test_util::CreateCopyResultCallback(&error));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   ASSERT_EQ(FILE_ERROR_OK, error);
 
   // Makes sure the FakeDriveService's content is loaded to the metadata_.
@@ -129,7 +137,7 @@ void OperationTestBase::SetUp() {
       loader_controller_.get()));
   change_list_loader_->LoadIfNeeded(
       google_apis::test_util::CreateCopyResultCallback(&error));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   ASSERT_EQ(FILE_ERROR_OK, error);
 }
 
@@ -142,7 +150,7 @@ FileError OperationTestBase::GetLocalResourceEntry(const base::FilePath& path,
       base::Bind(&internal::ResourceMetadata::GetResourceEntryByPath,
                  base::Unretained(metadata()), path, entry),
       base::Bind(google_apis::test_util::CreateCopyResultCallback(&error)));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   return error;
 }
 
@@ -156,7 +164,7 @@ FileError OperationTestBase::GetLocalResourceEntryById(
       base::Bind(&internal::ResourceMetadata::GetResourceEntryById,
                  base::Unretained(metadata()), local_id, entry),
       base::Bind(google_apis::test_util::CreateCopyResultCallback(&error)));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   return error;
 }
 
@@ -169,7 +177,7 @@ std::string OperationTestBase::GetLocalId(const base::FilePath& path) {
       base::Bind(&internal::ResourceMetadata::GetIdByPath,
                  base::Unretained(metadata()), path, &local_id),
       base::Bind(google_apis::test_util::CreateCopyResultCallback(&error)));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   EXPECT_EQ(FILE_ERROR_OK, error) << path.value();
   return local_id;
 }
@@ -178,7 +186,7 @@ FileError OperationTestBase::CheckForUpdates() {
   FileError error = FILE_ERROR_FAILED;
   change_list_loader_->CheckForUpdates(
       google_apis::test_util::CreateCopyResultCallback(&error));
-  test_util::RunBlockingPoolTask();
+  content::RunAllBlockingPoolTasksUntilIdle();
   return error;
 }