| OLD | NEW |
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/chromeos/drive/file_system/create_directory_operation.h
" | 5 #include "chrome/browser/chromeos/drive/file_system/create_directory_operation.h
" |
| 6 | 6 |
| 7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
| 8 #include "base/threading/sequenced_worker_pool.h" | 8 #include "base/threading/sequenced_worker_pool.h" |
| 9 #include "chrome/browser/chromeos/drive/change_list_loader.h" | 9 #include "chrome/browser/chromeos/drive/change_list_loader.h" |
| 10 #include "chrome/browser/chromeos/drive/drive_cache.h" | 10 #include "chrome/browser/chromeos/drive/drive_cache.h" |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 50 new DriveResourceMetadata(fake_drive_service_->GetRootResourceId(), | 50 new DriveResourceMetadata(fake_drive_service_->GetRootResourceId(), |
| 51 blocking_task_runner_)); | 51 blocking_task_runner_)); |
| 52 | 52 |
| 53 scheduler_.reset( | 53 scheduler_.reset( |
| 54 new DriveScheduler(profile_.get(), fake_drive_service_.get(), NULL)); | 54 new DriveScheduler(profile_.get(), fake_drive_service_.get(), NULL)); |
| 55 scheduler_->Initialize(); | 55 scheduler_->Initialize(); |
| 56 | 56 |
| 57 drive_web_apps_registry_.reset(new DriveWebAppsRegistry); | 57 drive_web_apps_registry_.reset(new DriveWebAppsRegistry); |
| 58 | 58 |
| 59 fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter); | 59 fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter); |
| 60 cache_ = new DriveCache( | 60 cache_.reset(new DriveCache(DriveCache::GetCacheRootPath(profile_.get()), |
| 61 DriveCache::GetCacheRootPath(profile_.get()), | 61 blocking_task_runner_, |
| 62 blocking_task_runner_, | 62 fake_free_disk_space_getter_.get())); |
| 63 fake_free_disk_space_getter_.get()); | |
| 64 | 63 |
| 65 change_list_loader_.reset(new ChangeListLoader( | 64 change_list_loader_.reset(new ChangeListLoader( |
| 66 metadata_.get(), scheduler_.get(), drive_web_apps_registry_.get(), | 65 metadata_.get(), scheduler_.get(), drive_web_apps_registry_.get(), |
| 67 cache_)); | 66 cache_.get())); |
| 68 | 67 |
| 69 DriveFileError error = DRIVE_FILE_OK; | 68 DriveFileError error = DRIVE_FILE_OK; |
| 70 change_list_loader_->LoadFromServerIfNeeded( | 69 change_list_loader_->LoadFromServerIfNeeded( |
| 71 DirectoryFetchInfo(), | 70 DirectoryFetchInfo(), |
| 72 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, | 71 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, |
| 73 &error)); | 72 &error)); |
| 74 cache_->RequestInitializeForTesting(); | 73 cache_->RequestInitializeForTesting(); |
| 75 google_apis::test_util::RunBlockingPoolTask(); | 74 google_apis::test_util::RunBlockingPoolTask(); |
| 76 | 75 |
| 77 operation_.reset( | 76 operation_.reset( |
| 78 new CreateDirectoryOperation(scheduler_.get(), metadata_.get(), this)); | 77 new CreateDirectoryOperation(scheduler_.get(), metadata_.get(), this)); |
| 79 } | 78 } |
| 80 | 79 |
| 81 virtual void TearDown() OVERRIDE { | 80 virtual void TearDown() OVERRIDE { |
| 82 operation_.reset(); | 81 operation_.reset(); |
| 83 change_list_loader_.reset(); | 82 change_list_loader_.reset(); |
| 84 test_util::DeleteDriveCache(cache_); | 83 cache_.reset(); |
| 85 fake_free_disk_space_getter_.reset(); | 84 fake_free_disk_space_getter_.reset(); |
| 86 drive_web_apps_registry_.reset(); | 85 drive_web_apps_registry_.reset(); |
| 87 scheduler_.reset(); | 86 scheduler_.reset(); |
| 88 metadata_.reset(); | 87 metadata_.reset(); |
| 89 fake_drive_service_.reset(); | 88 fake_drive_service_.reset(); |
| 90 profile_.reset(); | 89 profile_.reset(); |
| 91 | 90 |
| 92 blocking_task_runner_ = NULL; | 91 blocking_task_runner_ = NULL; |
| 93 } | 92 } |
| 94 | 93 |
| (...skipping 26 matching lines...) Expand all Loading... |
| 121 private: | 120 private: |
| 122 MessageLoopForUI message_loop_; | 121 MessageLoopForUI message_loop_; |
| 123 // The order of the test threads is important, do not change the order. | 122 // The order of the test threads is important, do not change the order. |
| 124 // See also content/browser/browser_thread_impl.cc. | 123 // See also content/browser/browser_thread_impl.cc. |
| 125 content::TestBrowserThread ui_thread_; | 124 content::TestBrowserThread ui_thread_; |
| 126 scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_; | 125 scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_; |
| 127 | 126 |
| 128 scoped_ptr<TestingProfile> profile_; | 127 scoped_ptr<TestingProfile> profile_; |
| 129 | 128 |
| 130 scoped_ptr<google_apis::FakeDriveService> fake_drive_service_; | 129 scoped_ptr<google_apis::FakeDriveService> fake_drive_service_; |
| 131 scoped_ptr<DriveResourceMetadata> metadata_; | 130 test_util::DestroyHelperForTests<DriveResourceMetadata>::scoped_ptr metadata_; |
| 132 scoped_ptr<DriveScheduler> scheduler_; | 131 scoped_ptr<DriveScheduler> scheduler_; |
| 133 scoped_ptr<DriveWebAppsRegistry> drive_web_apps_registry_; | 132 scoped_ptr<DriveWebAppsRegistry> drive_web_apps_registry_; |
| 134 scoped_ptr<FakeFreeDiskSpaceGetter> fake_free_disk_space_getter_; | 133 scoped_ptr<FakeFreeDiskSpaceGetter> fake_free_disk_space_getter_; |
| 135 | 134 |
| 136 // The way to delete the DriveCache instance is a bit tricky, so here we use | 135 test_util::DestroyHelperForTests<DriveCache>::scoped_ptr cache_; |
| 137 // a raw point. See TearDown method for how to delete it. | |
| 138 DriveCache* cache_; | |
| 139 scoped_ptr<ChangeListLoader> change_list_loader_; | 136 scoped_ptr<ChangeListLoader> change_list_loader_; |
| 140 | 137 |
| 141 scoped_ptr<CreateDirectoryOperation> operation_; | 138 scoped_ptr<CreateDirectoryOperation> operation_; |
| 142 }; | 139 }; |
| 143 | 140 |
| 144 TEST_F(CreateDirectoryOperationTest, FindFirstMissingParentDirectory) { | 141 TEST_F(CreateDirectoryOperationTest, FindFirstMissingParentDirectory) { |
| 145 ASSERT_TRUE(LoadRootFeedDocument("chromeos/gdata/root_feed.json")); | 142 ASSERT_TRUE(LoadRootFeedDocument("chromeos/gdata/root_feed.json")); |
| 146 | 143 |
| 147 CreateDirectoryOperation::FindFirstMissingParentDirectoryResult result; | 144 CreateDirectoryOperation::FindFirstMissingParentDirectoryResult result; |
| 148 | 145 |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 196 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1")), | 193 base::FilePath(FILE_PATH_LITERAL("drive/Directory 1")), |
| 197 base::Bind(&CopyResultFromFindFirstMissingParentDirectory, | 194 base::Bind(&CopyResultFromFindFirstMissingParentDirectory, |
| 198 &result)); | 195 &result)); |
| 199 google_apis::test_util::RunBlockingPoolTask(); | 196 google_apis::test_util::RunBlockingPoolTask(); |
| 200 EXPECT_EQ(CreateDirectoryOperation::FIND_FIRST_DIRECTORY_ALREADY_PRESENT, | 197 EXPECT_EQ(CreateDirectoryOperation::FIND_FIRST_DIRECTORY_ALREADY_PRESENT, |
| 201 result.error); | 198 result.error); |
| 202 } | 199 } |
| 203 | 200 |
| 204 } // namespace file_system | 201 } // namespace file_system |
| 205 } // namespace drive | 202 } // namespace drive |
| OLD | NEW |