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

Side by Side Diff: chrome/browser/chromeos/gdata/gdata_files_unittest.cc

Issue 10827211: Replace GDataDirectory::TakeEntry with GDataDirectoryService::AddEntryToDirectory. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: expect/assert after RunBlockingTask Created 8 years, 4 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/gdata/gdata_files.h" 5 #include "chrome/browser/chromeos/gdata/gdata_files.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 13 matching lines...) Expand all
24 24
25 // See gdata.proto for the difference between the two URLs. 25 // See gdata.proto for the difference between the two URLs.
26 const char kResumableEditMediaUrl[] = "http://resumable-edit-media/"; 26 const char kResumableEditMediaUrl[] = "http://resumable-edit-media/";
27 const char kResumableCreateMediaUrl[] = "http://resumable-create-media/"; 27 const char kResumableCreateMediaUrl[] = "http://resumable-create-media/";
28 28
29 // Add a directory to |parent| and return that directory. The name and 29 // Add a directory to |parent| and return that directory. The name and
30 // resource_id are determined by the incrementing counter |sequence_id|. 30 // resource_id are determined by the incrementing counter |sequence_id|.
31 GDataDirectory* AddDirectory(GDataDirectory* parent, 31 GDataDirectory* AddDirectory(GDataDirectory* parent,
32 GDataDirectoryService* directory_service, 32 GDataDirectoryService* directory_service,
33 int sequence_id) { 33 int sequence_id) {
34 GDataDirectory* dir = new GDataDirectory(parent, directory_service); 34 GDataDirectory* dir = new GDataDirectory(NULL, directory_service);
35 const std::string dir_name = "dir" + base::IntToString(sequence_id); 35 const std::string dir_name = "dir" + base::IntToString(sequence_id);
36 const std::string resource_id = std::string("dir_resource_id:") + 36 const std::string resource_id = std::string("dir_resource_id:") +
37 dir_name; 37 dir_name;
38 dir->set_title(dir_name); 38 dir->set_title(dir_name);
39 dir->set_resource_id(resource_id); 39 dir->set_resource_id(resource_id);
40 GDataFileError error = GDATA_FILE_ERROR_FAILED; 40 GDataFileError error = GDATA_FILE_ERROR_FAILED;
41 directory_service->AddEntryToDirectory( 41 directory_service->AddEntryToDirectory(
42 parent->GetFilePath(), 42 parent->GetFilePath(),
43 dir, 43 dir,
44 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, &error)); 44 base::Bind(&test_util::CopyErrorCodeFromFilePathUpdateCallback, &error));
45 test_util::RunBlockingPoolTask(); 45 test_util::RunBlockingPoolTask();
46 EXPECT_EQ(GDATA_FILE_OK, error); 46 EXPECT_EQ(GDATA_FILE_OK, error);
47 return dir; 47 return dir;
48 } 48 }
49 49
50 // Add a file to |parent| and return that file. The name and 50 // Add a file to |parent| and return that file. The name and
51 // resource_id are determined by the incrementing counter |sequence_id|. 51 // resource_id are determined by the incrementing counter |sequence_id|.
52 GDataFile* AddFile(GDataDirectory* parent, 52 GDataFile* AddFile(GDataDirectory* parent,
53 GDataDirectoryService* directory_service, 53 GDataDirectoryService* directory_service,
54 int sequence_id) { 54 int sequence_id) {
55 GDataFile* file = new GDataFile(parent, directory_service); 55 GDataFile* file = new GDataFile(NULL, directory_service);
56 const std::string title = "file" + base::IntToString(sequence_id); 56 const std::string title = "file" + base::IntToString(sequence_id);
57 const std::string resource_id = std::string("file_resource_id:") + 57 const std::string resource_id = std::string("file_resource_id:") +
58 title; 58 title;
59 file->set_title(title); 59 file->set_title(title);
60 file->set_resource_id(resource_id); 60 file->set_resource_id(resource_id);
61 file->set_file_md5(std::string("file_md5:") + title); 61 file->set_file_md5(std::string("file_md5:") + title);
62 GDataFileError error = GDATA_FILE_ERROR_FAILED; 62 GDataFileError error = GDATA_FILE_ERROR_FAILED;
63 directory_service->AddEntryToDirectory( 63 directory_service->AddEntryToDirectory(
64 parent->GetFilePath(), 64 parent->GetFilePath(),
65 file, 65 file,
66 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, &error)); 66 base::Bind(&test_util::CopyErrorCodeFromFilePathUpdateCallback, &error));
67 test_util::RunBlockingPoolTask(); 67 test_util::RunBlockingPoolTask();
68 EXPECT_EQ(GDATA_FILE_OK, error); 68 EXPECT_EQ(GDATA_FILE_OK, error);
69 return file; 69 return file;
70 } 70 }
71 71
72 // Creates the following files/directories 72 // Creates the following files/directories
73 // drive/dir1/ 73 // drive/dir1/
74 // drive/dir2/ 74 // drive/dir2/
75 // drive/dir1/dir3/ 75 // drive/dir1/dir3/
76 // drive/dir1/file4 76 // drive/dir1/file4
(...skipping 289 matching lines...) Expand 10 before | Expand all | Expand 10 after
366 // No file should be added to the root directory. 366 // No file should be added to the root directory.
367 ASSERT_TRUE(root->child_files().empty()); 367 ASSERT_TRUE(root->child_files().empty());
368 // Two directories ("empty", "dir") should be added to the root directory. 368 // Two directories ("empty", "dir") should be added to the root directory.
369 ASSERT_EQ(2U, root->child_directories().size()); 369 ASSERT_EQ(2U, root->child_directories().size());
370 // The origin should change to FROM_CACHE because we loaded from the cache. 370 // The origin should change to FROM_CACHE because we loaded from the cache.
371 ASSERT_EQ(FROM_CACHE, directory_service.origin()); 371 ASSERT_EQ(FROM_CACHE, directory_service.origin());
372 } 372 }
373 373
374 TEST(GDataRootDirectoryTest, RefreshFile) { 374 TEST(GDataRootDirectoryTest, RefreshFile) {
375 MessageLoopForUI message_loop; 375 MessageLoopForUI message_loop;
376 content::TestBrowserThread ui_thread(content::BrowserThread::UI,
377 &message_loop);
378
376 GDataDirectoryService directory_service; 379 GDataDirectoryService directory_service;
377 GDataDirectory* root(directory_service.root());
378 // Add a directory to the file system. 380 // Add a directory to the file system.
379 GDataDirectory* directory_entry = new GDataDirectory(root, 381 GDataDirectory* directory_entry = new GDataDirectory(NULL,
380 &directory_service); 382 &directory_service);
381 directory_entry->set_resource_id("folder:directory_resource_id"); 383 directory_entry->set_resource_id("folder:directory_resource_id");
382 directory_entry->set_title("directory"); 384 directory_entry->set_title("directory");
383 directory_entry->SetBaseNameFromTitle(); 385 directory_entry->SetBaseNameFromTitle();
384 GDataFileError error = GDATA_FILE_ERROR_FAILED; 386 GDataFileError error = GDATA_FILE_ERROR_FAILED;
385 directory_service.AddEntryToDirectory( 387 directory_service.AddEntryToDirectory(
386 FilePath(kGDataRootDirectory), 388 FilePath(kGDataRootDirectory),
387 directory_entry, 389 directory_entry,
388 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, &error)); 390 base::Bind(&test_util::CopyErrorCodeFromFilePathUpdateCallback, &error));
389 test_util::RunBlockingPoolTask(); 391 test_util::RunBlockingPoolTask();
390 ASSERT_EQ(GDATA_FILE_OK, error); 392 ASSERT_EQ(GDATA_FILE_OK, error);
391 393
392 // Add a new file to the directory. 394 // Add a new file to the directory.
393 GDataFile* initial_file_entry = new GDataFile(NULL, &directory_service); 395 GDataFile* initial_file_entry = new GDataFile(NULL, &directory_service);
394 initial_file_entry->set_resource_id("file:file_resource_id"); 396 initial_file_entry->set_resource_id("file:file_resource_id");
395 initial_file_entry->set_title("file"); 397 initial_file_entry->set_title("file");
396 initial_file_entry->SetBaseNameFromTitle(); 398 initial_file_entry->SetBaseNameFromTitle();
399 error = GDATA_FILE_ERROR_FAILED;
397 directory_service.AddEntryToDirectory( 400 directory_service.AddEntryToDirectory(
398 directory_entry->GetFilePath(), 401 directory_entry->GetFilePath(),
399 initial_file_entry, 402 initial_file_entry,
400 base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, &error)); 403 base::Bind(&test_util::CopyErrorCodeFromFilePathUpdateCallback, &error));
401 test_util::RunBlockingPoolTask(); 404 test_util::RunBlockingPoolTask();
402 ASSERT_EQ(GDATA_FILE_OK, error); 405 ASSERT_EQ(GDATA_FILE_OK, error);
403 406
404 ASSERT_EQ(directory_entry, initial_file_entry->parent()); 407 ASSERT_EQ(directory_entry, initial_file_entry->parent());
405 408
406 // Initial file system state set, let's try refreshing entries. 409 // Initial file system state set, let's try refreshing entries.
407 410
408 // New value for the entry with resource id "file:file_resource_id". 411 // New value for the entry with resource id "file:file_resource_id".
409 GDataFile* new_file_entry = new GDataFile(NULL, &directory_service); 412 GDataFile* new_file_entry = new GDataFile(NULL, &directory_service);
410 new_file_entry->set_resource_id("file:file_resource_id"); 413 new_file_entry->set_resource_id("file:file_resource_id");
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 GDataDirectoryService directory_service2; 467 GDataDirectoryService directory_service2;
465 // InitFromDB should succeed with GDATA_FILE_OK as the db now exists. 468 // InitFromDB should succeed with GDATA_FILE_OK as the db now exists.
466 directory_service2.InitFromDB(db_path, blocking_task_runner, 469 directory_service2.InitFromDB(db_path, blocking_task_runner,
467 base::Bind(&InitFromDBCallback, GDATA_FILE_OK)); 470 base::Bind(&InitFromDBCallback, GDATA_FILE_OK));
468 test_util::RunBlockingPoolTask(); 471 test_util::RunBlockingPoolTask();
469 472
470 VerifyDirectoryService(&directory_service2); 473 VerifyDirectoryService(&directory_service2);
471 } 474 }
472 475
473 } // namespace gdata 476 } // namespace gdata
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698