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

Side by Side Diff: chrome/browser/chromeos/drive/change_list_loader_unittest.cc

Issue 118993002: drive: Move FileSystem::LoadDirectoryIfNeeded to ChangeListLoader (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years 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/change_list_loader.h" 5 #include "chrome/browser/chromeos/drive/change_list_loader.h"
6 6
7 #include "base/files/scoped_temp_dir.h" 7 #include "base/files/scoped_temp_dir.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/prefs/testing_pref_service.h" 9 #include "base/prefs/testing_pref_service.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
11 #include "chrome/browser/chromeos/drive/change_list_loader_observer.h" 11 #include "chrome/browser/chromeos/drive/change_list_loader_observer.h"
12 #include "chrome/browser/chromeos/drive/change_list_processor.h"
13 #include "chrome/browser/chromeos/drive/file_cache.h" 12 #include "chrome/browser/chromeos/drive/file_cache.h"
14 #include "chrome/browser/chromeos/drive/file_system_util.h" 13 #include "chrome/browser/chromeos/drive/file_system_util.h"
15 #include "chrome/browser/chromeos/drive/job_scheduler.h" 14 #include "chrome/browser/chromeos/drive/job_scheduler.h"
16 #include "chrome/browser/chromeos/drive/resource_metadata.h" 15 #include "chrome/browser/chromeos/drive/resource_metadata.h"
17 #include "chrome/browser/chromeos/drive/test_util.h" 16 #include "chrome/browser/chromeos/drive/test_util.h"
18 #include "chrome/browser/drive/fake_drive_service.h" 17 #include "chrome/browser/drive/fake_drive_service.h"
19 #include "content/public/test/test_browser_thread_bundle.h" 18 #include "content/public/test/test_browser_thread_bundle.h"
20 #include "google_apis/drive/test_util.h" 19 #include "google_apis/drive/test_util.h"
21 #include "testing/gtest/include/gtest/gtest.h" 20 #include "testing/gtest/include/gtest/gtest.h"
22 21
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 scoped_ptr<TestingPrefServiceSimple> pref_service_; 126 scoped_ptr<TestingPrefServiceSimple> pref_service_;
128 scoped_ptr<FakeDriveService> drive_service_; 127 scoped_ptr<FakeDriveService> drive_service_;
129 scoped_ptr<JobScheduler> scheduler_; 128 scoped_ptr<JobScheduler> scheduler_;
130 scoped_ptr<ResourceMetadataStorage, 129 scoped_ptr<ResourceMetadataStorage,
131 test_util::DestroyHelperForTests> metadata_storage_; 130 test_util::DestroyHelperForTests> metadata_storage_;
132 scoped_ptr<ResourceMetadata, test_util::DestroyHelperForTests> metadata_; 131 scoped_ptr<ResourceMetadata, test_util::DestroyHelperForTests> metadata_;
133 scoped_ptr<FileCache, test_util::DestroyHelperForTests> cache_; 132 scoped_ptr<FileCache, test_util::DestroyHelperForTests> cache_;
134 scoped_ptr<ChangeListLoader> change_list_loader_; 133 scoped_ptr<ChangeListLoader> change_list_loader_;
135 }; 134 };
136 135
137 TEST_F(ChangeListLoaderTest, LoadIfNeeded) { 136 TEST_F(ChangeListLoaderTest, Load) {
138 EXPECT_FALSE(change_list_loader_->IsRefreshing()); 137 EXPECT_FALSE(change_list_loader_->IsRefreshing());
139 138
140 // Start initial load. 139 // Start initial load.
141 TestChangeListLoaderObserver observer(change_list_loader_.get()); 140 TestChangeListLoaderObserver observer(change_list_loader_.get());
142 141
143 EXPECT_EQ(0, drive_service_->about_resource_load_count()); 142 EXPECT_EQ(0, drive_service_->about_resource_load_count());
144 143
145 FileError error = FILE_ERROR_FAILED; 144 FileError error = FILE_ERROR_FAILED;
146 change_list_loader_->LoadIfNeeded( 145 change_list_loader_->LoadForTesting(
147 DirectoryFetchInfo(),
148 google_apis::test_util::CreateCopyResultCallback(&error)); 146 google_apis::test_util::CreateCopyResultCallback(&error));
149 EXPECT_TRUE(change_list_loader_->IsRefreshing()); 147 EXPECT_TRUE(change_list_loader_->IsRefreshing());
150 base::RunLoop().RunUntilIdle(); 148 base::RunLoop().RunUntilIdle();
151 EXPECT_EQ(FILE_ERROR_OK, error); 149 EXPECT_EQ(FILE_ERROR_OK, error);
152 150
153 EXPECT_FALSE(change_list_loader_->IsRefreshing()); 151 EXPECT_FALSE(change_list_loader_->IsRefreshing());
154 EXPECT_LT(0, metadata_->GetLargestChangestamp()); 152 EXPECT_LT(0, metadata_->GetLargestChangestamp());
155 EXPECT_EQ(1, drive_service_->resource_list_load_count()); 153 EXPECT_EQ(1, drive_service_->resource_list_load_count());
156 EXPECT_EQ(1, drive_service_->about_resource_load_count()); 154 EXPECT_EQ(1, drive_service_->about_resource_load_count());
157 EXPECT_EQ(1, observer.initial_load_complete_count()); 155 EXPECT_EQ(1, observer.initial_load_complete_count());
158 EXPECT_EQ(1, observer.load_from_server_complete_count()); 156 EXPECT_EQ(1, observer.load_from_server_complete_count());
159 EXPECT_TRUE(observer.changed_directories().empty()); 157 EXPECT_TRUE(observer.changed_directories().empty());
160 158
161 base::FilePath file_path = 159 base::FilePath file_path =
162 util::GetDriveMyDriveRootPath().AppendASCII("File 1.txt"); 160 util::GetDriveMyDriveRootPath().AppendASCII("File 1.txt");
163 ResourceEntry entry; 161 ResourceEntry entry;
164 EXPECT_EQ(FILE_ERROR_OK, 162 EXPECT_EQ(FILE_ERROR_OK,
165 metadata_->GetResourceEntryByPath(file_path, &entry)); 163 metadata_->GetResourceEntryByPath(file_path, &entry));
166 164
167 // Reload. This should result in no-op. 165 // Reload. This should result in no-op.
168 int64 previous_changestamp = metadata_->GetLargestChangestamp(); 166 int64 previous_changestamp = metadata_->GetLargestChangestamp();
169 int previous_resource_list_load_count = 167 int previous_resource_list_load_count =
170 drive_service_->resource_list_load_count(); 168 drive_service_->resource_list_load_count();
171 change_list_loader_->LoadIfNeeded( 169 change_list_loader_->LoadForTesting(
172 DirectoryFetchInfo(),
173 google_apis::test_util::CreateCopyResultCallback(&error)); 170 google_apis::test_util::CreateCopyResultCallback(&error));
174 EXPECT_FALSE(change_list_loader_->IsRefreshing());
175 base::RunLoop().RunUntilIdle(); 171 base::RunLoop().RunUntilIdle();
176 EXPECT_EQ(FILE_ERROR_OK, error); 172 EXPECT_EQ(FILE_ERROR_OK, error);
177 173
178 EXPECT_FALSE(change_list_loader_->IsRefreshing()); 174 EXPECT_FALSE(change_list_loader_->IsRefreshing());
179 // Cached value is used. 175 // Cached value is used.
180 EXPECT_EQ(1, drive_service_->about_resource_load_count());
181 EXPECT_EQ(previous_changestamp, metadata_->GetLargestChangestamp()); 176 EXPECT_EQ(previous_changestamp, metadata_->GetLargestChangestamp());
182 EXPECT_EQ(previous_resource_list_load_count, 177 EXPECT_EQ(previous_resource_list_load_count,
183 drive_service_->resource_list_load_count()); 178 drive_service_->resource_list_load_count());
184 } 179 }
185 180
186 TEST_F(ChangeListLoaderTest, LoadIfNeeded_LocalMetadataAvailable) { 181 TEST_F(ChangeListLoaderTest, Load_LocalMetadataAvailable) {
187 // Prepare metadata. 182 // Prepare metadata.
188 FileError error = FILE_ERROR_FAILED; 183 FileError error = FILE_ERROR_FAILED;
189 change_list_loader_->LoadIfNeeded( 184 change_list_loader_->LoadForTesting(
190 DirectoryFetchInfo(),
191 google_apis::test_util::CreateCopyResultCallback(&error)); 185 google_apis::test_util::CreateCopyResultCallback(&error));
192 base::RunLoop().RunUntilIdle(); 186 base::RunLoop().RunUntilIdle();
193 EXPECT_EQ(FILE_ERROR_OK, error); 187 EXPECT_EQ(FILE_ERROR_OK, error);
194 188
195 // Reset loader. 189 // Reset loader.
196 change_list_loader_.reset( 190 change_list_loader_.reset(
197 new ChangeListLoader(base::MessageLoopProxy::current().get(), 191 new ChangeListLoader(base::MessageLoopProxy::current().get(),
198 metadata_.get(), 192 metadata_.get(),
199 scheduler_.get(), 193 scheduler_.get(),
200 drive_service_.get())); 194 drive_service_.get()));
201 195
202 // Add a file to the service. 196 // Add a file to the service.
203 scoped_ptr<google_apis::ResourceEntry> gdata_entry = AddNewFile("New File"); 197 scoped_ptr<google_apis::ResourceEntry> gdata_entry = AddNewFile("New File");
204 ASSERT_TRUE(gdata_entry); 198 ASSERT_TRUE(gdata_entry);
205 199
206 // Start loading. Because local metadata is available, the load results in 200 // Start loading. Because local metadata is available, the load results in
207 // returning FILE_ERROR_OK without fetching full list of resources. 201 // returning FILE_ERROR_OK without fetching full list of resources.
208 const int previous_resource_list_load_count = 202 const int previous_resource_list_load_count =
209 drive_service_->resource_list_load_count(); 203 drive_service_->resource_list_load_count();
210 TestChangeListLoaderObserver observer(change_list_loader_.get()); 204 TestChangeListLoaderObserver observer(change_list_loader_.get());
211 205
212 change_list_loader_->LoadIfNeeded( 206 change_list_loader_->LoadForTesting(
213 DirectoryFetchInfo(),
214 google_apis::test_util::CreateCopyResultCallback(&error)); 207 google_apis::test_util::CreateCopyResultCallback(&error));
215 EXPECT_TRUE(change_list_loader_->IsRefreshing()); 208 EXPECT_TRUE(change_list_loader_->IsRefreshing());
216 base::RunLoop().RunUntilIdle(); 209 base::RunLoop().RunUntilIdle();
217 EXPECT_EQ(FILE_ERROR_OK, error); 210 EXPECT_EQ(FILE_ERROR_OK, error);
218 EXPECT_EQ(previous_resource_list_load_count, 211 EXPECT_EQ(previous_resource_list_load_count,
219 drive_service_->resource_list_load_count()); 212 drive_service_->resource_list_load_count());
220 EXPECT_EQ(1, observer.initial_load_complete_count()); 213 EXPECT_EQ(1, observer.initial_load_complete_count());
221 214
222 // Update should be checked by LoadIfNeeded(). 215 // Update should be checked by Load().
223 EXPECT_EQ(drive_service_->largest_changestamp(), 216 EXPECT_EQ(drive_service_->largest_changestamp(),
224 metadata_->GetLargestChangestamp()); 217 metadata_->GetLargestChangestamp());
225 EXPECT_EQ(1, drive_service_->change_list_load_count()); 218 EXPECT_EQ(1, drive_service_->change_list_load_count());
226 EXPECT_EQ(1, observer.load_from_server_complete_count()); 219 EXPECT_EQ(1, observer.load_from_server_complete_count());
227 EXPECT_EQ(1U, observer.changed_directories().count( 220 EXPECT_EQ(1U, observer.changed_directories().count(
228 util::GetDriveMyDriveRootPath())); 221 util::GetDriveMyDriveRootPath()));
229 222
230 base::FilePath file_path = 223 base::FilePath file_path =
231 util::GetDriveMyDriveRootPath().AppendASCII(gdata_entry->title()); 224 util::GetDriveMyDriveRootPath().AppendASCII(gdata_entry->title());
232 ResourceEntry entry; 225 ResourceEntry entry;
233 EXPECT_EQ(FILE_ERROR_OK, 226 EXPECT_EQ(FILE_ERROR_OK,
234 metadata_->GetResourceEntryByPath(file_path, &entry)); 227 metadata_->GetResourceEntryByPath(file_path, &entry));
235 } 228 }
236 229
237 TEST_F(ChangeListLoaderTest, LoadIfNeeded_MyDrive) { 230 TEST_F(ChangeListLoaderTest, LoadDirectoryIfNeeded_MyDrive) {
238 TestChangeListLoaderObserver observer(change_list_loader_.get()); 231 TestChangeListLoaderObserver observer(change_list_loader_.get());
239 232
240 // Emulate the slowness of GetAllResourceList(). 233 // Emulate the slowness of GetAllResourceList().
241 drive_service_->set_never_return_all_resource_list(true); 234 drive_service_->set_never_return_all_resource_list(true);
242 235
243 // Load grand root. 236 // Load grand root.
244 FileError error = FILE_ERROR_FAILED; 237 FileError error = FILE_ERROR_FAILED;
245 change_list_loader_->LoadIfNeeded( 238 change_list_loader_->LoadDirectoryIfNeeded(
246 DirectoryFetchInfo(util::kDriveGrandRootLocalId, 0), 239 util::GetDriveGrandRootPath(),
247 google_apis::test_util::CreateCopyResultCallback(&error)); 240 google_apis::test_util::CreateCopyResultCallback(&error));
248 base::RunLoop().RunUntilIdle(); 241 base::RunLoop().RunUntilIdle();
249 EXPECT_EQ(FILE_ERROR_OK, error); 242 EXPECT_EQ(FILE_ERROR_OK, error);
250 EXPECT_EQ(1U, observer.changed_directories().count( 243 EXPECT_EQ(1U, observer.changed_directories().count(
251 util::GetDriveGrandRootPath())); 244 util::GetDriveGrandRootPath()));
252 observer.clear_changed_directories(); 245 observer.clear_changed_directories();
253 246
254 // GetAllResourceList() was called. 247 // GetAllResourceList() was called.
255 EXPECT_EQ(1, drive_service_->blocked_resource_list_load_count()); 248 EXPECT_EQ(1, drive_service_->blocked_resource_list_load_count());
256 249
257 // My Drive is present in the local metadata, but its child is not. 250 // My Drive is present in the local metadata, but its child is not.
258 ResourceEntry entry; 251 ResourceEntry entry;
259 EXPECT_EQ(FILE_ERROR_OK, 252 EXPECT_EQ(FILE_ERROR_OK,
260 metadata_->GetResourceEntryByPath(util::GetDriveMyDriveRootPath(), 253 metadata_->GetResourceEntryByPath(util::GetDriveMyDriveRootPath(),
261 &entry)); 254 &entry));
262 const int64 mydrive_changestamp =
263 entry.directory_specific_info().changestamp();
264 255
265 base::FilePath file_path = 256 base::FilePath file_path =
266 util::GetDriveMyDriveRootPath().AppendASCII("File 1.txt"); 257 util::GetDriveMyDriveRootPath().AppendASCII("File 1.txt");
267 EXPECT_EQ(FILE_ERROR_NOT_FOUND, 258 EXPECT_EQ(FILE_ERROR_NOT_FOUND,
268 metadata_->GetResourceEntryByPath(file_path, &entry)); 259 metadata_->GetResourceEntryByPath(file_path, &entry));
269 260
270 // Load My Drive. 261 // Load My Drive.
271 change_list_loader_->LoadIfNeeded( 262 change_list_loader_->LoadDirectoryIfNeeded(
272 DirectoryFetchInfo(drive_service_->GetRootResourceId(), 263 util::GetDriveMyDriveRootPath(),
273 mydrive_changestamp),
274 google_apis::test_util::CreateCopyResultCallback(&error)); 264 google_apis::test_util::CreateCopyResultCallback(&error));
275 base::RunLoop().RunUntilIdle(); 265 base::RunLoop().RunUntilIdle();
276 EXPECT_EQ(FILE_ERROR_OK, error); 266 EXPECT_EQ(FILE_ERROR_OK, error);
277 EXPECT_EQ(1U, observer.changed_directories().count( 267 EXPECT_EQ(1U, observer.changed_directories().count(
278 util::GetDriveMyDriveRootPath())); 268 util::GetDriveMyDriveRootPath()));
279 269
280 // Now the file is present. 270 // Now the file is present.
281 EXPECT_EQ(FILE_ERROR_OK, 271 EXPECT_EQ(FILE_ERROR_OK,
282 metadata_->GetResourceEntryByPath(file_path, &entry)); 272 metadata_->GetResourceEntryByPath(file_path, &entry));
283 } 273 }
284 274
285 TEST_F(ChangeListLoaderTest, LoadIfNeeded_NewDirectories) { 275 TEST_F(ChangeListLoaderTest, LoadDirectoryIfNeeded_NewDirectories) {
286 // Make local metadata up to date. 276 // Make local metadata up to date.
287 FileError error = FILE_ERROR_FAILED; 277 FileError error = FILE_ERROR_FAILED;
288 change_list_loader_->LoadIfNeeded( 278 change_list_loader_->LoadForTesting(
289 DirectoryFetchInfo(),
290 google_apis::test_util::CreateCopyResultCallback(&error)); 279 google_apis::test_util::CreateCopyResultCallback(&error));
291 base::RunLoop().RunUntilIdle(); 280 base::RunLoop().RunUntilIdle();
292 EXPECT_EQ(FILE_ERROR_OK, error); 281 EXPECT_EQ(FILE_ERROR_OK, error);
293 282
294 // Add a new file. 283 // Add a new file.
295 scoped_ptr<google_apis::ResourceEntry> file = AddNewFile("New File"); 284 scoped_ptr<google_apis::ResourceEntry> file = AddNewFile("New File");
296 ASSERT_TRUE(file); 285 ASSERT_TRUE(file);
297 286
298 // Emulate the slowness of GetAllResourceList(). 287 // Emulate the slowness of GetAllResourceList().
299 drive_service_->set_never_return_all_resource_list(true); 288 drive_service_->set_never_return_all_resource_list(true);
300 289
301 // Enter refreshing state. 290 // Enter refreshing state.
302 FileError check_for_updates_error = FILE_ERROR_FAILED; 291 FileError check_for_updates_error = FILE_ERROR_FAILED;
303 change_list_loader_->CheckForUpdates( 292 change_list_loader_->CheckForUpdates(
304 google_apis::test_util::CreateCopyResultCallback( 293 google_apis::test_util::CreateCopyResultCallback(
305 &check_for_updates_error)); 294 &check_for_updates_error));
306 EXPECT_TRUE(change_list_loader_->IsRefreshing()); 295 EXPECT_TRUE(change_list_loader_->IsRefreshing());
307 296
308 // Load My Drive. 297 // Load My Drive.
309 TestChangeListLoaderObserver observer(change_list_loader_.get()); 298 TestChangeListLoaderObserver observer(change_list_loader_.get());
310 change_list_loader_->LoadIfNeeded( 299 change_list_loader_->LoadDirectoryIfNeeded(
311 DirectoryFetchInfo(drive_service_->GetRootResourceId(), 300 util::GetDriveMyDriveRootPath(),
312 metadata_->GetLargestChangestamp()),
313 google_apis::test_util::CreateCopyResultCallback(&error)); 301 google_apis::test_util::CreateCopyResultCallback(&error));
314 base::RunLoop().RunUntilIdle(); 302 base::RunLoop().RunUntilIdle();
315 EXPECT_EQ(FILE_ERROR_OK, error); 303 EXPECT_EQ(FILE_ERROR_OK, error);
316 EXPECT_EQ(1U, observer.changed_directories().count( 304 EXPECT_EQ(1U, observer.changed_directories().count(
317 util::GetDriveMyDriveRootPath())); 305 util::GetDriveMyDriveRootPath()));
318 306
319 // The new file is present in the local metadata. 307 // The new file is present in the local metadata.
320 base::FilePath file_path = 308 base::FilePath file_path =
321 util::GetDriveMyDriveRootPath().AppendASCII(file->title()); 309 util::GetDriveMyDriveRootPath().AppendASCII(file->title());
322 ResourceEntry entry; 310 ResourceEntry entry;
323 EXPECT_EQ(FILE_ERROR_OK, 311 EXPECT_EQ(FILE_ERROR_OK,
324 metadata_->GetResourceEntryByPath(file_path, &entry)); 312 metadata_->GetResourceEntryByPath(file_path, &entry));
325 } 313 }
326 314
327 TEST_F(ChangeListLoaderTest, LoadIfNeeded_MultipleCalls) { 315 TEST_F(ChangeListLoaderTest, LoadDirectoryIfNeeded_MultipleCalls) {
328 TestChangeListLoaderObserver observer(change_list_loader_.get()); 316 TestChangeListLoaderObserver observer(change_list_loader_.get());
329 317
330 // Load grand root. 318 // Load grand root.
331 FileError error = FILE_ERROR_FAILED; 319 FileError error = FILE_ERROR_FAILED;
332 change_list_loader_->LoadIfNeeded( 320 change_list_loader_->LoadDirectoryIfNeeded(
333 DirectoryFetchInfo(util::kDriveGrandRootLocalId, 0), 321 util::GetDriveGrandRootPath(),
334 google_apis::test_util::CreateCopyResultCallback(&error)); 322 google_apis::test_util::CreateCopyResultCallback(&error));
335 323
336 // Load grand root again without waiting for the result. 324 // Load grand root again without waiting for the result.
337 FileError error2 = FILE_ERROR_FAILED; 325 FileError error2 = FILE_ERROR_FAILED;
338 change_list_loader_->LoadIfNeeded( 326 change_list_loader_->LoadDirectoryIfNeeded(
339 DirectoryFetchInfo(util::kDriveGrandRootLocalId, 0), 327 util::GetDriveGrandRootPath(),
340 google_apis::test_util::CreateCopyResultCallback(&error2)); 328 google_apis::test_util::CreateCopyResultCallback(&error2));
341 base::RunLoop().RunUntilIdle(); 329 base::RunLoop().RunUntilIdle();
342 330
343 // Callback is called for each method call. 331 // Callback is called for each method call.
344 EXPECT_EQ(FILE_ERROR_OK, error); 332 EXPECT_EQ(FILE_ERROR_OK, error);
345 EXPECT_EQ(FILE_ERROR_OK, error2); 333 EXPECT_EQ(FILE_ERROR_OK, error2);
346 334
347 // No duplicated resource list load and observer events. 335 // No duplicated resource list load and observer events.
348 EXPECT_EQ(1, drive_service_->resource_list_load_count()); 336 EXPECT_EQ(1, drive_service_->resource_list_load_count());
349 EXPECT_EQ(1, observer.initial_load_complete_count()); 337 EXPECT_EQ(1, observer.initial_load_complete_count());
350 EXPECT_EQ(1, observer.load_from_server_complete_count()); 338 EXPECT_EQ(1, observer.load_from_server_complete_count());
351 } 339 }
352 340
353 TEST_F(ChangeListLoaderTest, CheckForUpdates) { 341 TEST_F(ChangeListLoaderTest, CheckForUpdates) {
354 // CheckForUpdates() results in no-op before load. 342 // CheckForUpdates() results in no-op before load.
355 FileError check_for_updates_error = FILE_ERROR_FAILED; 343 FileError check_for_updates_error = FILE_ERROR_FAILED;
356 change_list_loader_->CheckForUpdates( 344 change_list_loader_->CheckForUpdates(
357 google_apis::test_util::CreateCopyResultCallback( 345 google_apis::test_util::CreateCopyResultCallback(
358 &check_for_updates_error)); 346 &check_for_updates_error));
359 EXPECT_FALSE(change_list_loader_->IsRefreshing()); 347 EXPECT_FALSE(change_list_loader_->IsRefreshing());
360 base::RunLoop().RunUntilIdle(); 348 base::RunLoop().RunUntilIdle();
361 EXPECT_EQ(FILE_ERROR_FAILED, 349 EXPECT_EQ(FILE_ERROR_FAILED,
362 check_for_updates_error); // Callback was not run. 350 check_for_updates_error); // Callback was not run.
363 EXPECT_EQ(0, metadata_->GetLargestChangestamp()); 351 EXPECT_EQ(0, metadata_->GetLargestChangestamp());
364 EXPECT_EQ(0, drive_service_->resource_list_load_count()); 352 EXPECT_EQ(0, drive_service_->resource_list_load_count());
365 EXPECT_EQ(0, drive_service_->about_resource_load_count()); 353 EXPECT_EQ(0, drive_service_->about_resource_load_count());
366 354
367 // Start initial load. 355 // Start initial load.
368 FileError load_error = FILE_ERROR_FAILED; 356 FileError load_error = FILE_ERROR_FAILED;
369 change_list_loader_->LoadIfNeeded( 357 change_list_loader_->LoadForTesting(
370 DirectoryFetchInfo(),
371 google_apis::test_util::CreateCopyResultCallback(&load_error)); 358 google_apis::test_util::CreateCopyResultCallback(&load_error));
372 EXPECT_TRUE(change_list_loader_->IsRefreshing()); 359 EXPECT_TRUE(change_list_loader_->IsRefreshing());
373 360
374 // CheckForUpdates() while loading. 361 // CheckForUpdates() while loading.
375 change_list_loader_->CheckForUpdates( 362 change_list_loader_->CheckForUpdates(
376 google_apis::test_util::CreateCopyResultCallback( 363 google_apis::test_util::CreateCopyResultCallback(
377 &check_for_updates_error)); 364 &check_for_updates_error));
378 365
379 base::RunLoop().RunUntilIdle(); 366 base::RunLoop().RunUntilIdle();
380 EXPECT_FALSE(change_list_loader_->IsRefreshing()); 367 EXPECT_FALSE(change_list_loader_->IsRefreshing());
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 // The new file is found in the local metadata. 400 // The new file is found in the local metadata.
414 base::FilePath new_file_path = 401 base::FilePath new_file_path =
415 util::GetDriveMyDriveRootPath().AppendASCII(gdata_entry->title()); 402 util::GetDriveMyDriveRootPath().AppendASCII(gdata_entry->title());
416 ResourceEntry entry; 403 ResourceEntry entry;
417 EXPECT_EQ(FILE_ERROR_OK, 404 EXPECT_EQ(FILE_ERROR_OK,
418 metadata_->GetResourceEntryByPath(new_file_path, &entry)); 405 metadata_->GetResourceEntryByPath(new_file_path, &entry));
419 } 406 }
420 407
421 } // namespace internal 408 } // namespace internal
422 } // namespace drive 409 } // namespace drive
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698