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

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

Issue 10274002: Add gdata content search (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix renaming Created 8 years, 7 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 <errno.h> 5 #include <errno.h>
6 #include <string> 6 #include <string>
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
(...skipping 1117 matching lines...) Expand 10 before | Expand all | Expand 10 after
1128 TEST_F(GDataFileSystemTest, DuplicatedAsyncInitialization) { 1128 TEST_F(GDataFileSystemTest, DuplicatedAsyncInitialization) {
1129 int counter = 0; 1129 int counter = 0;
1130 ReadDirectoryCallback callback = base::Bind( 1130 ReadDirectoryCallback callback = base::Bind(
1131 &AsyncInitializationCallback, 1131 &AsyncInitializationCallback,
1132 &counter, 1132 &counter,
1133 2, 1133 2,
1134 FilePath(FILE_PATH_LITERAL("gdata")), 1134 FilePath(FILE_PATH_LITERAL("gdata")),
1135 &message_loop_); 1135 &message_loop_);
1136 1136
1137 EXPECT_CALL(*mock_doc_service_, GetAccountMetadata(_)).Times(1); 1137 EXPECT_CALL(*mock_doc_service_, GetAccountMetadata(_)).Times(1);
1138 EXPECT_CALL(*mock_doc_service_, GetDocuments(Eq(GURL()), _, _)).Times(1); 1138 EXPECT_CALL(*mock_doc_service_, GetDocuments(Eq(GURL()), _, _, _)).Times(1);
1139 1139
1140 file_system_->ReadDirectoryByPathAsync( 1140 file_system_->ReadDirectoryByPathAsync(
1141 FilePath(FILE_PATH_LITERAL("gdata")), callback); 1141 FilePath(FILE_PATH_LITERAL("gdata")), callback);
1142 file_system_->ReadDirectoryByPathAsync( 1142 file_system_->ReadDirectoryByPathAsync(
1143 FilePath(FILE_PATH_LITERAL("gdata")), callback); 1143 FilePath(FILE_PATH_LITERAL("gdata")), callback);
1144 message_loop_.Run(); // Wait to get our result 1144 message_loop_.Run(); // Wait to get our result
1145 EXPECT_EQ(2, counter); 1145 EXPECT_EQ(2, counter);
1146 } 1146 }
1147 1147
1148 TEST_F(GDataFileSystemTest, SearchRootDirectory) { 1148 TEST_F(GDataFileSystemTest, SearchRootDirectory) {
(...skipping 1920 matching lines...) Expand 10 before | Expand all | Expand 10 after
3069 3069
3070 file_system_->GetFileByResourceId(file->resource_id(), callback, 3070 file_system_->GetFileByResourceId(file->resource_id(), callback,
3071 GetDownloadDataCallback()); 3071 GetDownloadDataCallback());
3072 RunAllPendingForIO(); 3072 RunAllPendingForIO();
3073 3073
3074 EXPECT_EQ(REGULAR_FILE, callback_helper_->file_type_); 3074 EXPECT_EQ(REGULAR_FILE, callback_helper_->file_type_);
3075 EXPECT_EQ(downloaded_file.value(), 3075 EXPECT_EQ(downloaded_file.value(),
3076 callback_helper_->download_path_.value()); 3076 callback_helper_->download_path_.value());
3077 } 3077 }
3078 3078
3079 void ContentSearchCallback(MessageLoop* message_loop,
satorux1 2012/05/03 17:58:34 function comment is missing. please also move thi
tbarzic 2012/05/03 23:56:17 Done.
3080 base::PlatformFileError error,
3081 scoped_ptr<GDataDirectoryProto> dir_proto) {
3082 ASSERT_EQ(base::PLATFORM_FILE_OK, error);
3083 ASSERT_TRUE(dir_proto.get() != NULL);
3084
3085 // Search feed contains 2 entries. One file (SubDirectory File 1.txt) and one
3086 // directory (Directory 1). Entries generated from the fedd should have names
3087 // in format resource_id.actual_file_name.
3088 ASSERT_EQ(1, dir_proto->child_files_size());
3089 EXPECT_EQ("file:2_file_resouce_id.SubDirectory File 1.txt",
3090 dir_proto->child_files(0).gdata_entry().file_name());
3091
3092 ASSERT_EQ(1, dir_proto->child_directories_size());
3093 EXPECT_EQ("folder:1_folder_resource_id.Directory 1",
3094 dir_proto->child_directories(0).gdata_entry().file_name());
3095
3096 message_loop->Quit();
3097 }
3098
3099 TEST_F(GDataFileSystemTest, ContentSearch) {
3100 LoadRootFeedDocument("root_feed.json");
3101
3102 EXPECT_CALL(*mock_doc_service_, GetDocuments(Eq(GURL()), _, "foo", _))
3103 .Times(1);
3104
3105 ReadDirectoryCallback callback = base::Bind(
3106 &ContentSearchCallback,
3107 &message_loop_);
3108
3109 file_system_->SearchContent("foo", callback);
3110 message_loop_.Run(); // Wait to get our result
3111
3112 struct SearchResultPair {
3113 const char* search_path;
3114 const char* real_path;
3115 };
3116
3117 const SearchResultPair kSearchResultPairs[] = {
3118 { "gdata/.search/foo/file:2_file_resouce_id.SubDirectory File 1.txt",
3119 "gdata/Directory 1/SubDirectory File 1.txt" },
3120 { "gdata/.search/foo/folder:1_folder_resource_id.Directory 1",
3121 "gdata/Directory 1" },
3122 { "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3123 "SubDirectory File 1.txt",
3124 "gdata/Directory 1/SubDirectory File 1.txt" }
3125 };
3126
3127 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(kSearchResultPairs); i++) {
satorux1 2012/05/03 17:58:34 why cannot you use arraysize()? i++ -> ++i (as th
tbarzic 2012/05/03 23:56:17 struct SearchResultPair is defined in function.. w
3128 FilePath search_file_path(FILE_PATH_LITERAL(
3129 kSearchResultPairs[i].search_path));
3130 FilePath real_file_path(FILE_PATH_LITERAL(
3131 kSearchResultPairs[i].real_path));
3132
3133 GDataEntry* search_file_entry = FindEntry(search_file_path);
3134 ASSERT_TRUE(search_file_entry != NULL)
3135 << "Can't find " << search_file_path.value();
3136
3137 GDataEntry* real_file_entry = FindEntry(real_file_path);
3138 ASSERT_TRUE(real_file_entry != NULL)
3139 << "Can't find " << real_file_path.value();
3140
3141 EXPECT_EQ(search_file_entry, real_file_entry);
3142 }
3143 }
3144
3145 TEST_F(GDataFileSystemTest, ContentSearch_Delete) {
3146 LoadRootFeedDocument("root_feed.json");
3147
3148 EXPECT_CALL(*mock_doc_service_, DeleteDocument(_, _)).Times(1);
3149 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3150 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
3151
3152 FilePath search_file_path(FILE_PATH_LITERAL(
3153 "gdata/.search/foo/file:2_file_resouce_id.SubDirectory File 1.txt"));
3154 FilePath real_file_path(FILE_PATH_LITERAL(
3155 "gdata/Directory 1/SubDirectory File 1.txt"));
3156
3157 ASSERT_TRUE(FindEntry(real_file_path) != NULL);
3158 ASSERT_TRUE(FindEntry(search_file_path) != NULL);
3159
3160 FileOperationCallback callback =
3161 base::Bind(&CallbackHelper::FileOperationCallback,
3162 callback_helper_.get());
3163
3164 file_system_->Remove(search_file_path, false, callback);
3165 message_loop_.RunAllPending(); // Wait to get our result
3166
3167 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3168
3169 EXPECT_TRUE(FindEntry(real_file_path) == NULL);
satorux1 2012/05/03 17:58:34 EXPECT_FALSE(FindEntry(real_file_path))
tbarzic 2012/05/03 23:56:17 Done.
3170 EXPECT_TRUE(FindEntry(search_file_path) == NULL);
3171 }
3172
3173 TEST_F(GDataFileSystemTest, ContentSearch_RenameResult) {
3174 LoadRootFeedDocument("root_feed.json");
3175
3176 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3177 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
3178
3179 EXPECT_CALL(*mock_doc_service_, RenameResource(
3180 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3181 "SubDirectory File 1.txt.renamed", _))
3182 .Times(1);
3183
3184 FilePath source_path_search(FILE_PATH_LITERAL(
3185 "gdata/.search/foo/file:2_file_resouce_id.SubDirectory File 1.txt"));
3186 FilePath source_path_real(FILE_PATH_LITERAL(
3187 "gdata/Directory 1/SubDirectory File 1.txt"));
3188
3189 FilePath renamed_path_search(FILE_PATH_LITERAL(
3190 "gdata/.search/foo/"
3191 "file:2_file_resouce_id.SubDirectory File 1.txt.renamed"));
3192 FilePath renamed_path_real(FILE_PATH_LITERAL(
3193 "gdata/Directory 1/SubDirectory File 1.txt.renamed"));
3194
3195 FileOperationCallback callback =
3196 base::Bind(&CallbackHelper::FileOperationCallback,
3197 callback_helper_.get());
3198
3199 file_system_->Move(source_path_search, renamed_path_search, callback);
3200 message_loop_.RunAllPending();
3201
3202 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3203
3204 EXPECT_TRUE(FindEntry(source_path_real) == NULL);
3205 EXPECT_TRUE(FindEntry(source_path_search) == NULL);
3206
3207 EXPECT_TRUE(FindEntry(renamed_path_real) != NULL);
3208 EXPECT_TRUE(FindEntry(renamed_path_search) != NULL);
3209 }
3210
3211 TEST_F(GDataFileSystemTest, ContentSearch_Move) {
3212 LoadRootFeedDocument("root_feed.json");
3213
3214 // Setup directory observer mocks.
3215 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3216 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
3217 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3218 Eq(FilePath(FILE_PATH_LITERAL(
3219 "gdata/Directory 1/Sub Directory Folder")))))
3220 .Times(1);
3221 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3222 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
3223
3224 // Setup documents service mocks.
3225 EXPECT_CALL(*mock_doc_service_, RenameResource(
3226 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3227 "SubDirectory File 1.txt.dest", _))
3228 .Times(1);
3229 EXPECT_CALL(*mock_doc_service_, RemoveResourceFromDirectory(
3230 Eq(GURL("https://1_folder_content_url/")),
3231 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3232 "file:2_file_resouce_id", _))
3233 .Times(1);
3234 EXPECT_CALL(*mock_doc_service_, AddResourceToDirectory(
3235 Eq(GURL("https://1_folder_content_url/")),
3236 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")), _))
3237 .Times(1);
3238
3239 // Start the test.
3240 FilePath source_path_search(FILE_PATH_LITERAL(
3241 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3242 "SubDirectory File 1.txt"));
3243 FilePath source_path_real(FILE_PATH_LITERAL(
3244 "gdata/Directory 1/SubDirectory File 1.txt"));
3245
3246 FilePath destination_path_search(FILE_PATH_LITERAL(
3247 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3248 "Sub Directory Folder/SubDirectory File 1.txt.dest"));
3249 FilePath destination_path_real(FILE_PATH_LITERAL(
3250 "gdata/Directory 1/Sub Directory Folder/SubDirectory File 1.txt.dest"));
3251
3252 ASSERT_TRUE(FindEntry(source_path_search) != NULL);
3253 ASSERT_TRUE(FindEntry(source_path_real) != NULL);
3254
3255 FileOperationCallback callback =
3256 base::Bind(&CallbackHelper::FileOperationCallback,
3257 callback_helper_.get());
3258
3259 file_system_->Move(source_path_search, destination_path_search, callback);
3260 message_loop_.RunAllPending();
3261
3262 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3263
3264 EXPECT_TRUE(FindEntry(source_path_search) == NULL);
3265 EXPECT_TRUE(FindEntry(source_path_real) == NULL);
3266
3267 EXPECT_TRUE(FindEntry(destination_path_search) != NULL);
3268 EXPECT_TRUE(FindEntry(destination_path_real) != NULL);
3269 }
3270
3271 // Move file to gdata file system from search result directory.
3272 TEST_F(GDataFileSystemTest, ContentSearch_MoveToGData) {
3273 LoadRootFeedDocument("root_feed.json");
3274
3275 // Setup directory observer mocks.
3276 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3277 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
3278 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3279 Eq(FilePath(FILE_PATH_LITERAL(
3280 "gdata/Directory 1/Sub Directory Folder")))))
3281 .Times(1);
3282 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3283 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
3284
3285 // Setup documents service mocks.
3286 EXPECT_CALL(*mock_doc_service_, RenameResource(
3287 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3288 "SubDirectory File 1.txt.dest", _))
3289 .Times(1);
3290 EXPECT_CALL(*mock_doc_service_, RemoveResourceFromDirectory(
3291 Eq(GURL("https://1_folder_content_url/")),
3292 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3293 "file:2_file_resouce_id", _))
3294 .Times(1);
3295 EXPECT_CALL(*mock_doc_service_, AddResourceToDirectory(
3296 Eq(GURL("https://1_folder_content_url/")),
3297 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")), _))
3298 .Times(1);
3299
3300 // Statr the test.
3301 FilePath source_path_search(FILE_PATH_LITERAL(
3302 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3303 "SubDirectory File 1.txt"));
3304 FilePath source_path_real(FILE_PATH_LITERAL(
3305 "gdata/Directory 1/SubDirectory File 1.txt"));
3306
3307 FilePath destination_path_search(FILE_PATH_LITERAL(
3308 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3309 "Sub Directory Folder/SubDirectory File 1.txt.dest"));
3310 FilePath destination_path_real(FILE_PATH_LITERAL(
3311 "gdata/Directory 1/Sub Directory Folder/SubDirectory File 1.txt.dest"));
3312
3313 ASSERT_TRUE(FindEntry(source_path_search) != NULL);
3314 ASSERT_TRUE(FindEntry(source_path_real) != NULL);
3315
3316 FileOperationCallback callback =
3317 base::Bind(&CallbackHelper::FileOperationCallback,
3318 callback_helper_.get());
3319
3320 file_system_->Move(source_path_search, destination_path_real, callback);
3321 message_loop_.RunAllPending();
3322
3323 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3324
3325 EXPECT_TRUE(FindEntry(source_path_search) == NULL);
3326 EXPECT_TRUE(FindEntry(source_path_real) == NULL);
3327
3328 EXPECT_TRUE(FindEntry(destination_path_search) != NULL);
3329 EXPECT_TRUE(FindEntry(destination_path_real) != NULL);
3330 }
3331
3332 TEST_F(GDataFileSystemTest, ContentSearch_MoveToSearch) {
3333 LoadRootFeedDocument("root_feed.json");
3334
3335 // Setup directory observer mocks.
3336 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3337 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
3338 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3339 Eq(FilePath(FILE_PATH_LITERAL(
3340 "gdata/Directory 1/Sub Directory Folder")))))
3341 .Times(1);
3342 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3343 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
3344
3345 // Setup documents service mocks.
3346 EXPECT_CALL(*mock_doc_service_, RenameResource(
3347 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3348 "SubDirectory File 1.txt.dest", _))
3349 .Times(1);
3350 EXPECT_CALL(*mock_doc_service_, RemoveResourceFromDirectory(
3351 Eq(GURL("https://1_folder_content_url/")),
3352 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")),
3353 "file:2_file_resouce_id", _))
3354 .Times(1);
3355 EXPECT_CALL(*mock_doc_service_, AddResourceToDirectory(
3356 Eq(GURL("https://1_folder_content_url/")),
3357 Eq(GURL("https://dir1_file_link_self/file:2_file_resouce_id")), _))
3358 .Times(1);
3359
3360 // Statr the test.
3361 FilePath source_path_search(FILE_PATH_LITERAL(
3362 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3363 "SubDirectory File 1.txt"));
3364 FilePath source_path_real(FILE_PATH_LITERAL(
3365 "gdata/Directory 1/SubDirectory File 1.txt"));
3366
3367 FilePath destination_path_search(FILE_PATH_LITERAL(
3368 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3369 "Sub Directory Folder/SubDirectory File 1.txt.dest"));
3370 FilePath destination_path_real(FILE_PATH_LITERAL(
3371 "gdata/Directory 1/Sub Directory Folder/SubDirectory File 1.txt.dest"));
3372
3373 ASSERT_TRUE(FindEntry(source_path_search) != NULL);
3374 ASSERT_TRUE(FindEntry(source_path_real) != NULL);
3375
3376 FileOperationCallback callback =
3377 base::Bind(&CallbackHelper::FileOperationCallback,
3378 callback_helper_.get());
3379
3380 file_system_->Move(source_path_real, destination_path_search, callback);
3381 message_loop_.RunAllPending();
3382
3383 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3384
3385 EXPECT_TRUE(FindEntry(source_path_search) == NULL);
3386 EXPECT_TRUE(FindEntry(source_path_real) == NULL);
3387
3388 EXPECT_TRUE(FindEntry(destination_path_search) != NULL);
3389 EXPECT_TRUE(FindEntry(destination_path_real) != NULL);
3390 }
3391
3392 TEST_F(GDataFileSystemTest, ContentSearch_CopyToSearchDirectory) {
3393 LoadRootFeedDocument("root_feed.json");
3394
3395 FilePath src_file_path(FILE_PATH_LITERAL(
3396 "gdata/Directory 1/SubDirectory File 1.txt"));
3397 FilePath dest_file_path(FILE_PATH_LITERAL(
3398 "gdata/.search/Directory 1"));
3399
3400 FileOperationCallback callback =
3401 base::Bind(&CallbackHelper::FileOperationCallback,
3402 callback_helper_.get());
3403
3404 file_system_->Copy(src_file_path, dest_file_path, callback);
3405 message_loop_.RunAllPending();
3406
3407 EXPECT_NE(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3408
3409 EXPECT_TRUE(FindEntry(src_file_path) != NULL);
3410 }
3411
3412 TEST_F(GDataFileSystemTest, ContentSearch_CopyToSearchResultDirectory) {
3413 LoadRootFeedDocument("root_feed.json");
3414
3415 FilePath src_file_path(FILE_PATH_LITERAL(
3416 "gdata/Directory 1/SubDirectory File 1.txt"));
3417 FilePath dest_file_path(FILE_PATH_LITERAL(
3418 "gdata/.search/foo/Directory 1"));
3419
3420 FileOperationCallback callback =
3421 base::Bind(&CallbackHelper::FileOperationCallback,
3422 callback_helper_.get());
3423
3424 file_system_->Copy(src_file_path, dest_file_path, callback);
3425 message_loop_.RunAllPending();
3426
3427 EXPECT_EQ(base::PLATFORM_FILE_ERROR_INVALID_OPERATION,
3428 callback_helper_->last_error_);
3429
3430 EXPECT_TRUE(FindEntry(src_file_path) != NULL);
3431 }
3432
3433 TEST_F(GDataFileSystemTest, ContentSearch_CreateDirInSearchResultDirectory) {
3434 LoadRootFeedDocument("root_feed.json");
3435
3436 FilePath dest_file_path(FILE_PATH_LITERAL(
3437 "gdata/.search/foo/New Folder"));
3438
3439 FileOperationCallback callback =
3440 base::Bind(&CallbackHelper::FileOperationCallback,
3441 callback_helper_.get());
3442
3443 file_system_->CreateDirectory(dest_file_path, false, false, callback);
3444 message_loop_.RunAllPending();
3445
3446 EXPECT_EQ(base::PLATFORM_FILE_ERROR_INVALID_OPERATION,
3447 callback_helper_->last_error_);
3448 }
3449
3450 TEST_F(GDataFileSystemTest, ContentSearch_CreateDirInSearchDirectory) {
3451 LoadRootFeedDocument("root_feed.json");
3452
3453 FilePath dest_file_path(FILE_PATH_LITERAL(
3454 "gdata/.search/New Folder"));
3455
3456 FileOperationCallback callback =
3457 base::Bind(&CallbackHelper::FileOperationCallback,
3458 callback_helper_.get());
3459
3460 file_system_->CreateDirectory(dest_file_path, false, false, callback);
3461 message_loop_.RunAllPending();
3462
3463 EXPECT_EQ(base::PLATFORM_FILE_ERROR_INVALID_OPERATION,
3464 callback_helper_->last_error_);
3465 }
3466
3467 TEST_F(GDataFileSystemTest, ContentSearch_CreateDirectory) {
3468 LoadRootFeedDocument("root_feed.json");
3469
3470 EXPECT_CALL(*mock_directory_observer_, OnDirectoryChanged(
3471 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
3472 EXPECT_CALL(*mock_doc_service_, CreateDirectory(
3473 Eq(GURL("https://1_folder_content_url/")), "FolderNew", _)).Times(1);
3474
3475 FilePath search_dir_path(FILE_PATH_LITERAL(
3476 "gdata/.search/foo/folder:1_folder_resource_id.Directory 1/"
3477 "FolderNew"));
3478 FilePath real_dir_path(FILE_PATH_LITERAL("gdata/Directory 1/FolderNew"));
3479
3480 EXPECT_TRUE(FindEntry(search_dir_path) == NULL);
3481 EXPECT_TRUE(FindEntry(real_dir_path) == NULL);
3482
3483 FileOperationCallback callback =
3484 base::Bind(&CallbackHelper::FileOperationCallback,
3485 callback_helper_.get());
3486
3487 file_system_->CreateDirectory(search_dir_path, false, false, callback);
3488 message_loop_.RunAllPending();
3489
3490 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
3491
3492 EXPECT_TRUE(FindEntry(search_dir_path) != NULL);
3493 EXPECT_TRUE(FindEntry(real_dir_path) != NULL);
3494 }
3079 3495
3080 TEST_F(GDataFileSystemTest, GetAvailableSpace) { 3496 TEST_F(GDataFileSystemTest, GetAvailableSpace) {
3081 EXPECT_CALL(*mock_sync_client_, OnCacheInitialized()).Times(1); 3497 EXPECT_CALL(*mock_sync_client_, OnCacheInitialized()).Times(1);
3082 3498
3083 GetAvailableSpaceCallback callback = 3499 GetAvailableSpaceCallback callback =
3084 base::Bind(&CallbackHelper::GetAvailableSpaceCallback, 3500 base::Bind(&CallbackHelper::GetAvailableSpaceCallback,
3085 callback_helper_.get()); 3501 callback_helper_.get());
3086 3502
3087 EXPECT_CALL(*mock_doc_service_, GetAccountMetadata(_)); 3503 EXPECT_CALL(*mock_doc_service_, GetAccountMetadata(_));
3088 3504
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
3139 EXPECT_EQ(1, num_callback_invocations_); 3555 EXPECT_EQ(1, num_callback_invocations_);
3140 EXPECT_TRUE(CacheEntryExists(resource_id, md5)); 3556 EXPECT_TRUE(CacheEntryExists(resource_id, md5));
3141 3557
3142 // Try to remove the file. 3558 // Try to remove the file.
3143 num_callback_invocations_ = 0; 3559 num_callback_invocations_ = 0;
3144 TestRemoveFromCache(resource_id, base::PLATFORM_FILE_OK); 3560 TestRemoveFromCache(resource_id, base::PLATFORM_FILE_OK);
3145 EXPECT_EQ(1, num_callback_invocations_); 3561 EXPECT_EQ(1, num_callback_invocations_);
3146 } 3562 }
3147 3563
3148 } // namespace gdata 3564 } // namespace gdata
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698