Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(330)

Side by Side Diff: chrome/browser/chromeos/drive/file_system/operation_test_base.cc

Issue 380993002: Upstream RunBlockingPoolTask(). (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed. Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 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/operation_test_base.h" 5 #include "chrome/browser/chromeos/drive/file_system/operation_test_base.h"
6 6
7 #include "base/prefs/testing_pref_service.h" 7 #include "base/prefs/testing_pref_service.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/fake_free_disk_space_getter.h" 10 #include "chrome/browser/chromeos/drive/fake_free_disk_space_getter.h"
11 #include "chrome/browser/chromeos/drive/file_cache.h" 11 #include "chrome/browser/chromeos/drive/file_cache.h"
12 #include "chrome/browser/chromeos/drive/file_change.h" 12 #include "chrome/browser/chromeos/drive/file_change.h"
13 #include "chrome/browser/chromeos/drive/file_system/operation_observer.h" 13 #include "chrome/browser/chromeos/drive/file_system/operation_observer.h"
14 #include "chrome/browser/chromeos/drive/job_scheduler.h" 14 #include "chrome/browser/chromeos/drive/job_scheduler.h"
15 #include "chrome/browser/chromeos/drive/resource_metadata.h" 15 #include "chrome/browser/chromeos/drive/resource_metadata.h"
16 #include "chrome/browser/chromeos/drive/test_util.h"
17 #include "chrome/browser/drive/event_logger.h" 16 #include "chrome/browser/drive/event_logger.h"
18 #include "chrome/browser/drive/fake_drive_service.h" 17 #include "chrome/browser/drive/fake_drive_service.h"
19 #include "chrome/browser/drive/test_util.h" 18 #include "chrome/browser/drive/test_util.h"
20 #include "content/public/browser/browser_thread.h" 19 #include "content/public/browser/browser_thread.h"
20 #include "content/public/test/test_utils.h"
21 #include "google_apis/drive/test_util.h" 21 #include "google_apis/drive/test_util.h"
22 22
23 namespace drive { 23 namespace drive {
24 namespace file_system { 24 namespace file_system {
25 25
26 OperationTestBase::LoggingObserver::LoggingObserver() { 26 OperationTestBase::LoggingObserver::LoggingObserver() {
27 } 27 }
28 28
29 OperationTestBase::LoggingObserver::~LoggingObserver() { 29 OperationTestBase::LoggingObserver::~LoggingObserver() {
30 } 30 }
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 78
79 metadata_storage_.reset(new internal::ResourceMetadataStorage( 79 metadata_storage_.reset(new internal::ResourceMetadataStorage(
80 temp_dir_.path(), blocking_task_runner_.get())); 80 temp_dir_.path(), blocking_task_runner_.get()));
81 bool success = false; 81 bool success = false;
82 base::PostTaskAndReplyWithResult( 82 base::PostTaskAndReplyWithResult(
83 blocking_task_runner_.get(), 83 blocking_task_runner_.get(),
84 FROM_HERE, 84 FROM_HERE,
85 base::Bind(&internal::ResourceMetadataStorage::Initialize, 85 base::Bind(&internal::ResourceMetadataStorage::Initialize,
86 base::Unretained(metadata_storage_.get())), 86 base::Unretained(metadata_storage_.get())),
87 google_apis::test_util::CreateCopyResultCallback(&success)); 87 google_apis::test_util::CreateCopyResultCallback(&success));
88 test_util::RunBlockingPoolTask(); 88 content::RunAllBlockingPoolTasksUntilIdle();
89 ASSERT_TRUE(success); 89 ASSERT_TRUE(success);
90 90
91 fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter); 91 fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter);
92 cache_.reset(new internal::FileCache(metadata_storage_.get(), 92 cache_.reset(new internal::FileCache(metadata_storage_.get(),
93 temp_dir_.path(), 93 temp_dir_.path(),
94 blocking_task_runner_.get(), 94 blocking_task_runner_.get(),
95 fake_free_disk_space_getter_.get())); 95 fake_free_disk_space_getter_.get()));
96 success = false; 96 success = false;
97 base::PostTaskAndReplyWithResult( 97 base::PostTaskAndReplyWithResult(
98 blocking_task_runner_.get(), 98 blocking_task_runner_.get(),
99 FROM_HERE, 99 FROM_HERE,
100 base::Bind(&internal::FileCache::Initialize, 100 base::Bind(&internal::FileCache::Initialize,
101 base::Unretained(cache_.get())), 101 base::Unretained(cache_.get())),
102 google_apis::test_util::CreateCopyResultCallback(&success)); 102 google_apis::test_util::CreateCopyResultCallback(&success));
103 test_util::RunBlockingPoolTask(); 103 content::RunAllBlockingPoolTasksUntilIdle();
104 ASSERT_TRUE(success); 104 ASSERT_TRUE(success);
105 105
106 metadata_.reset(new internal::ResourceMetadata(metadata_storage_.get(), 106 metadata_.reset(new internal::ResourceMetadata(metadata_storage_.get(),
107 cache_.get(), 107 cache_.get(),
108 blocking_task_runner_)); 108 blocking_task_runner_));
109 109
110 FileError error = FILE_ERROR_FAILED; 110 FileError error = FILE_ERROR_FAILED;
111 base::PostTaskAndReplyWithResult( 111 base::PostTaskAndReplyWithResult(
112 blocking_task_runner_.get(), 112 blocking_task_runner_.get(),
113 FROM_HERE, 113 FROM_HERE,
114 base::Bind(&internal::ResourceMetadata::Initialize, 114 base::Bind(&internal::ResourceMetadata::Initialize,
115 base::Unretained(metadata_.get())), 115 base::Unretained(metadata_.get())),
116 google_apis::test_util::CreateCopyResultCallback(&error)); 116 google_apis::test_util::CreateCopyResultCallback(&error));
117 test_util::RunBlockingPoolTask(); 117 content::RunAllBlockingPoolTasksUntilIdle();
118 ASSERT_EQ(FILE_ERROR_OK, error); 118 ASSERT_EQ(FILE_ERROR_OK, error);
119 119
120 // Makes sure the FakeDriveService's content is loaded to the metadata_. 120 // Makes sure the FakeDriveService's content is loaded to the metadata_.
121 about_resource_loader_.reset(new internal::AboutResourceLoader( 121 about_resource_loader_.reset(new internal::AboutResourceLoader(
122 scheduler_.get())); 122 scheduler_.get()));
123 loader_controller_.reset(new internal::LoaderController); 123 loader_controller_.reset(new internal::LoaderController);
124 change_list_loader_.reset(new internal::ChangeListLoader( 124 change_list_loader_.reset(new internal::ChangeListLoader(
125 logger_.get(), 125 logger_.get(),
126 blocking_task_runner_.get(), 126 blocking_task_runner_.get(),
127 metadata_.get(), 127 metadata_.get(),
128 scheduler_.get(), 128 scheduler_.get(),
129 about_resource_loader_.get(), 129 about_resource_loader_.get(),
130 loader_controller_.get())); 130 loader_controller_.get()));
131 change_list_loader_->LoadIfNeeded( 131 change_list_loader_->LoadIfNeeded(
132 google_apis::test_util::CreateCopyResultCallback(&error)); 132 google_apis::test_util::CreateCopyResultCallback(&error));
133 test_util::RunBlockingPoolTask(); 133 content::RunAllBlockingPoolTasksUntilIdle();
134 ASSERT_EQ(FILE_ERROR_OK, error); 134 ASSERT_EQ(FILE_ERROR_OK, error);
135 } 135 }
136 136
137 FileError OperationTestBase::GetLocalResourceEntry(const base::FilePath& path, 137 FileError OperationTestBase::GetLocalResourceEntry(const base::FilePath& path,
138 ResourceEntry* entry) { 138 ResourceEntry* entry) {
139 FileError error = FILE_ERROR_FAILED; 139 FileError error = FILE_ERROR_FAILED;
140 base::PostTaskAndReplyWithResult( 140 base::PostTaskAndReplyWithResult(
141 blocking_task_runner(), 141 blocking_task_runner(),
142 FROM_HERE, 142 FROM_HERE,
143 base::Bind(&internal::ResourceMetadata::GetResourceEntryByPath, 143 base::Bind(&internal::ResourceMetadata::GetResourceEntryByPath,
144 base::Unretained(metadata()), path, entry), 144 base::Unretained(metadata()), path, entry),
145 base::Bind(google_apis::test_util::CreateCopyResultCallback(&error))); 145 base::Bind(google_apis::test_util::CreateCopyResultCallback(&error)));
146 test_util::RunBlockingPoolTask(); 146 content::RunAllBlockingPoolTasksUntilIdle();
147 return error; 147 return error;
148 } 148 }
149 149
150 FileError OperationTestBase::GetLocalResourceEntryById( 150 FileError OperationTestBase::GetLocalResourceEntryById(
151 const std::string& local_id, 151 const std::string& local_id,
152 ResourceEntry* entry) { 152 ResourceEntry* entry) {
153 FileError error = FILE_ERROR_FAILED; 153 FileError error = FILE_ERROR_FAILED;
154 base::PostTaskAndReplyWithResult( 154 base::PostTaskAndReplyWithResult(
155 blocking_task_runner(), 155 blocking_task_runner(),
156 FROM_HERE, 156 FROM_HERE,
157 base::Bind(&internal::ResourceMetadata::GetResourceEntryById, 157 base::Bind(&internal::ResourceMetadata::GetResourceEntryById,
158 base::Unretained(metadata()), local_id, entry), 158 base::Unretained(metadata()), local_id, entry),
159 base::Bind(google_apis::test_util::CreateCopyResultCallback(&error))); 159 base::Bind(google_apis::test_util::CreateCopyResultCallback(&error)));
160 test_util::RunBlockingPoolTask(); 160 content::RunAllBlockingPoolTasksUntilIdle();
161 return error; 161 return error;
162 } 162 }
163 163
164 std::string OperationTestBase::GetLocalId(const base::FilePath& path) { 164 std::string OperationTestBase::GetLocalId(const base::FilePath& path) {
165 std::string local_id; 165 std::string local_id;
166 FileError error = FILE_ERROR_FAILED; 166 FileError error = FILE_ERROR_FAILED;
167 base::PostTaskAndReplyWithResult( 167 base::PostTaskAndReplyWithResult(
168 blocking_task_runner(), 168 blocking_task_runner(),
169 FROM_HERE, 169 FROM_HERE,
170 base::Bind(&internal::ResourceMetadata::GetIdByPath, 170 base::Bind(&internal::ResourceMetadata::GetIdByPath,
171 base::Unretained(metadata()), path, &local_id), 171 base::Unretained(metadata()), path, &local_id),
172 base::Bind(google_apis::test_util::CreateCopyResultCallback(&error))); 172 base::Bind(google_apis::test_util::CreateCopyResultCallback(&error)));
173 test_util::RunBlockingPoolTask(); 173 content::RunAllBlockingPoolTasksUntilIdle();
174 EXPECT_EQ(FILE_ERROR_OK, error) << path.value(); 174 EXPECT_EQ(FILE_ERROR_OK, error) << path.value();
175 return local_id; 175 return local_id;
176 } 176 }
177 177
178 FileError OperationTestBase::CheckForUpdates() { 178 FileError OperationTestBase::CheckForUpdates() {
179 FileError error = FILE_ERROR_FAILED; 179 FileError error = FILE_ERROR_FAILED;
180 change_list_loader_->CheckForUpdates( 180 change_list_loader_->CheckForUpdates(
181 google_apis::test_util::CreateCopyResultCallback(&error)); 181 google_apis::test_util::CreateCopyResultCallback(&error));
182 test_util::RunBlockingPoolTask(); 182 content::RunAllBlockingPoolTasksUntilIdle();
183 return error; 183 return error;
184 } 184 }
185 185
186 } // namespace file_system 186 } // namespace file_system
187 } // namespace drive 187 } // namespace drive
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698