#include "chrome/browser/chromeos/drive/file_system/create_file_operation.h"
+#include "chrome/browser/chromeos/drive/file_change.h"
#include "chrome/browser/chromeos/drive/file_system/operation_test_base.h"
+#include "content/public/test/test_utils.h"
#include "google_apis/drive/test_util.h"
#include "testing/gtest/include/gtest/gtest.h"
TEST_F(CreateFileOperationTest, CreateFile) {
CreateFileOperation operation(blocking_task_runner(),
- observer(),
+ delegate(),
metadata());
const base::FilePath kFilePath(FILE_PATH_LITERAL("drive/root/New File.txt"));
true, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_OK, error);
ResourceEntry entry;
EXPECT_FALSE(base::Time::FromInternalValue(
entry.file_info().last_accessed()).is_null());
- EXPECT_EQ(1u, observer()->get_changed_paths().size());
- EXPECT_EQ(1u, observer()->get_changed_paths().count(kFilePath.DirName()));
- EXPECT_EQ(1u, observer()->updated_local_ids().size());
- EXPECT_EQ(1u, observer()->updated_local_ids().count(entry.local_id()));
+ EXPECT_EQ(1u, delegate()->get_changed_files().size());
+ EXPECT_EQ(1u, delegate()->get_changed_files().count(kFilePath));
+ EXPECT_EQ(1u, delegate()->updated_local_ids().size());
+ EXPECT_EQ(1u, delegate()->updated_local_ids().count(entry.local_id()));
}
TEST_F(CreateFileOperationTest, CreateFileIsExclusive) {
CreateFileOperation operation(blocking_task_runner(),
- observer(),
+ delegate(),
metadata());
const base::FilePath kExistingFile(
true, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_EXISTS, error);
// Create succeeds if is_exclusive = false and a file exists.
false, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_OK, error);
// Create fails if a directory existed even when is_exclusive = false.
false, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_EXISTS, error);
// Create succeeds if no entry exists.
true, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_OK, error);
// Create fails if the parent directory does not exist.
false, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_NOT_A_DIRECTORY, error);
}
TEST_F(CreateFileOperationTest, CreateFileMimeType) {
CreateFileOperation operation(blocking_task_runner(),
- observer(),
+ delegate(),
metadata());
const base::FilePath kPng1(FILE_PATH_LITERAL("drive/root/1.png"));
false, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_OK, error);
// If no mime type is specified, it is guessed from the file name.
false, // is_exclusive
kSpecialMimeType,
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_OK, error);
// If the mime type is explicitly set, respect it.
false, // is_exclusive
std::string(), // no predetermined mime type
google_apis::test_util::CreateCopyResultCallback(&error));
- test_util::RunBlockingPoolTask();
+ content::RunAllBlockingPoolTasksUntilIdle();
EXPECT_EQ(FILE_ERROR_OK, error);
// If the mime type is not set and unknown, default to octet-stream.