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

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

Issue 10073005: gdata: Remove OnDirectoryChanged from MockGDataSyncClient (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 8 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
« no previous file with comments | « no previous file | chrome/browser/chromeos/gdata/mock_gdata_sync_client.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 1291 matching lines...) Expand 10 before | Expand all | Expand 10 after
1302 EXPECT_EQ(src_file, FindFileByResourceId(src_file_resource)); 1302 EXPECT_EQ(src_file, FindFileByResourceId(src_file_resource));
1303 1303
1304 EXPECT_CALL(*mock_doc_service_, 1304 EXPECT_CALL(*mock_doc_service_,
1305 RenameResource(src_file->self_url(), 1305 RenameResource(src_file->self_url(),
1306 FILE_PATH_LITERAL("Test.log"), _)); 1306 FILE_PATH_LITERAL("Test.log"), _));
1307 1307
1308 FileOperationCallback callback = 1308 FileOperationCallback callback =
1309 base::Bind(&CallbackHelper::FileOperationCallback, 1309 base::Bind(&CallbackHelper::FileOperationCallback,
1310 callback_helper_.get()); 1310 callback_helper_.get());
1311 1311
1312 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1313 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
1314
1315 file_system_->Move(src_file_path, dest_file_path, callback); 1312 file_system_->Move(src_file_path, dest_file_path, callback);
1316 message_loop_.RunAllPending(); 1313 message_loop_.RunAllPending();
1317 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_); 1314 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
1318 1315
1319 EXPECT_TRUE(FindFile(src_file_path) == NULL); 1316 EXPECT_TRUE(FindFile(src_file_path) == NULL);
1320 1317
1321 GDataFileBase* dest_file = NULL; 1318 GDataFileBase* dest_file = NULL;
1322 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL); 1319 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL);
1323 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_resource)); 1320 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_resource));
1324 EXPECT_EQ(src_file, dest_file); 1321 EXPECT_EQ(src_file, dest_file);
(...skipping 22 matching lines...) Expand all
1347 RenameResource(src_file->self_url(), 1344 RenameResource(src_file->self_url(),
1348 FILE_PATH_LITERAL("Test.log"), _)); 1345 FILE_PATH_LITERAL("Test.log"), _));
1349 EXPECT_CALL(*mock_doc_service_, 1346 EXPECT_CALL(*mock_doc_service_,
1350 AddResourceToDirectory(dest_parent->content_url(), 1347 AddResourceToDirectory(dest_parent->content_url(),
1351 src_file->self_url(), _)); 1348 src_file->self_url(), _));
1352 1349
1353 FileOperationCallback callback = 1350 FileOperationCallback callback =
1354 base::Bind(&CallbackHelper::FileOperationCallback, 1351 base::Bind(&CallbackHelper::FileOperationCallback,
1355 callback_helper_.get()); 1352 callback_helper_.get());
1356 1353
1357 // Expect notification for both source and destination directories.
1358 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1359 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
1360 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1361 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
1362
1363 file_system_->Move(src_file_path, dest_file_path, callback); 1354 file_system_->Move(src_file_path, dest_file_path, callback);
1364 message_loop_.RunAllPending(); 1355 message_loop_.RunAllPending();
1365 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_); 1356 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
1366 1357
1367 EXPECT_TRUE(FindFile(src_file_path) == NULL); 1358 EXPECT_TRUE(FindFile(src_file_path) == NULL);
1368 1359
1369 GDataFileBase* dest_file = NULL; 1360 GDataFileBase* dest_file = NULL;
1370 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL); 1361 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL);
1371 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_path_resource)); 1362 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_path_resource));
1372 EXPECT_EQ(src_file, dest_file); 1363 EXPECT_EQ(src_file, dest_file);
(...skipping 24 matching lines...) Expand all
1397 FILE_PATH_LITERAL("Test.log"), _)); 1388 FILE_PATH_LITERAL("Test.log"), _));
1398 EXPECT_CALL(*mock_doc_service_, 1389 EXPECT_CALL(*mock_doc_service_,
1399 RemoveResourceFromDirectory(src_parent->content_url(), 1390 RemoveResourceFromDirectory(src_parent->content_url(),
1400 src_file->self_url(), 1391 src_file->self_url(),
1401 src_file_path_resource, _)); 1392 src_file_path_resource, _));
1402 1393
1403 FileOperationCallback callback = 1394 FileOperationCallback callback =
1404 base::Bind(&CallbackHelper::FileOperationCallback, 1395 base::Bind(&CallbackHelper::FileOperationCallback,
1405 callback_helper_.get()); 1396 callback_helper_.get());
1406 1397
1407 // Expect notification for both source and destination directories.
1408 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1409 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
1410 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1411 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
1412
1413 file_system_->Move(src_file_path, dest_file_path, callback); 1398 file_system_->Move(src_file_path, dest_file_path, callback);
1414 message_loop_.RunAllPending(); 1399 message_loop_.RunAllPending();
1415 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_); 1400 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
1416 1401
1417 EXPECT_TRUE(FindFile(src_file_path) == NULL); 1402 EXPECT_TRUE(FindFile(src_file_path) == NULL);
1418 1403
1419 GDataFileBase* dest_file = NULL; 1404 GDataFileBase* dest_file = NULL;
1420 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL); 1405 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL);
1421 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_path_resource)); 1406 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_path_resource));
1422 EXPECT_EQ(src_file, dest_file); 1407 EXPECT_EQ(src_file, dest_file);
1423 } 1408 }
1424 1409
1425 TEST_F(GDataFileSystemTest, MoveFileBetweenSubDirectories) { 1410 TEST_F(GDataFileSystemTest, MoveFileBetweenSubDirectories) {
1426 FilePath src_parent_path(FILE_PATH_LITERAL("gdata/Directory 1")); 1411 FilePath src_parent_path(FILE_PATH_LITERAL("gdata/Directory 1"));
1427 FilePath src_file_path( 1412 FilePath src_file_path(
1428 FILE_PATH_LITERAL("gdata/Directory 1/SubDirectory File 1.txt")); 1413 FILE_PATH_LITERAL("gdata/Directory 1/SubDirectory File 1.txt"));
1429 FilePath dest_parent_path(FILE_PATH_LITERAL("gdata/New Folder 1")); 1414 FilePath dest_parent_path(FILE_PATH_LITERAL("gdata/New Folder 1"));
1430 FilePath dest_file_path(FILE_PATH_LITERAL("gdata/New Folder 1/Test.log")); 1415 FilePath dest_file_path(FILE_PATH_LITERAL("gdata/New Folder 1/Test.log"));
1431 FilePath interim_file_path(FILE_PATH_LITERAL("gdata/Test.log")); 1416 FilePath interim_file_path(FILE_PATH_LITERAL("gdata/Test.log"));
1432 1417
1433 LoadRootFeedDocument("root_feed.json"); 1418 LoadRootFeedDocument("root_feed.json");
1434 1419
1435 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1436 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
1437
1438 AddDirectoryFromFile(dest_parent_path, "directory_entry_atom.json"); 1420 AddDirectoryFromFile(dest_parent_path, "directory_entry_atom.json");
1439 1421
1440 GDataFileBase* src_file = NULL; 1422 GDataFileBase* src_file = NULL;
1441 EXPECT_TRUE((src_file = FindFile(src_file_path)) != NULL); 1423 EXPECT_TRUE((src_file = FindFile(src_file_path)) != NULL);
1442 EXPECT_TRUE(src_file->AsGDataFile() != NULL); 1424 EXPECT_TRUE(src_file->AsGDataFile() != NULL);
1443 std::string src_file_path_resource = src_file->AsGDataFile()->resource_id(); 1425 std::string src_file_path_resource = src_file->AsGDataFile()->resource_id();
1444 EXPECT_EQ(src_file, FindFileByResourceId(src_file_path_resource)); 1426 EXPECT_EQ(src_file, FindFileByResourceId(src_file_path_resource));
1445 EXPECT_FALSE(src_file->self_url().is_empty()); 1427 EXPECT_FALSE(src_file->self_url().is_empty());
1446 1428
1447 GDataFileBase* src_parent = NULL; 1429 GDataFileBase* src_parent = NULL;
(...skipping 16 matching lines...) Expand all
1464 src_file->self_url(), 1446 src_file->self_url(),
1465 src_file_path_resource, _)); 1447 src_file_path_resource, _));
1466 EXPECT_CALL(*mock_doc_service_, 1448 EXPECT_CALL(*mock_doc_service_,
1467 AddResourceToDirectory(dest_parent->content_url(), 1449 AddResourceToDirectory(dest_parent->content_url(),
1468 src_file->self_url(), _)); 1450 src_file->self_url(), _));
1469 1451
1470 FileOperationCallback callback = 1452 FileOperationCallback callback =
1471 base::Bind(&CallbackHelper::FileOperationCallback, 1453 base::Bind(&CallbackHelper::FileOperationCallback,
1472 callback_helper_.get()); 1454 callback_helper_.get());
1473 1455
1474 // Expect notification for both source and destination directories plus
1475 // interim file path.
1476 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1477 Eq(FilePath(FILE_PATH_LITERAL("gdata/Directory 1"))))).Times(1);
1478 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1479 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
1480 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1481 Eq(FilePath(FILE_PATH_LITERAL("gdata/New Folder 1"))))).Times(1);
1482
1483 file_system_->Move(src_file_path, dest_file_path, callback); 1456 file_system_->Move(src_file_path, dest_file_path, callback);
1484 message_loop_.RunAllPending(); 1457 message_loop_.RunAllPending();
1485 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_); 1458 EXPECT_EQ(base::PLATFORM_FILE_OK, callback_helper_->last_error_);
1486 1459
1487 EXPECT_TRUE(FindFile(src_file_path) == NULL); 1460 EXPECT_TRUE(FindFile(src_file_path) == NULL);
1488 EXPECT_TRUE(FindFile(interim_file_path) == NULL); 1461 EXPECT_TRUE(FindFile(interim_file_path) == NULL);
1489 1462
1490 GDataFileBase* dest_file = NULL; 1463 GDataFileBase* dest_file = NULL;
1491 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL); 1464 EXPECT_TRUE((dest_file = FindFile(dest_file_path)) != NULL);
1492 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_path_resource)); 1465 EXPECT_EQ(dest_file, FindFileByResourceId(src_file_path_resource));
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
1599 std::string file_in_root_resource = file->AsGDataFile()->resource_id(); 1572 std::string file_in_root_resource = file->AsGDataFile()->resource_id();
1600 EXPECT_EQ(file, FindFileByResourceId(file_in_root_resource)); 1573 EXPECT_EQ(file, FindFileByResourceId(file_in_root_resource));
1601 1574
1602 EXPECT_TRUE(FindFile(dir_in_root) != NULL); 1575 EXPECT_TRUE(FindFile(dir_in_root) != NULL);
1603 1576
1604 EXPECT_TRUE((file = FindFile(file_in_subdir)) != NULL); 1577 EXPECT_TRUE((file = FindFile(file_in_subdir)) != NULL);
1605 EXPECT_TRUE(file->AsGDataFile() != NULL); 1578 EXPECT_TRUE(file->AsGDataFile() != NULL);
1606 std::string file_in_subdir_resource = file->AsGDataFile()->resource_id(); 1579 std::string file_in_subdir_resource = file->AsGDataFile()->resource_id();
1607 EXPECT_EQ(file, FindFileByResourceId(file_in_subdir_resource)); 1580 EXPECT_EQ(file, FindFileByResourceId(file_in_subdir_resource));
1608 1581
1609 // Once for file in root and once for file...
1610 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1611 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(2);
1612
1613 // Remove first file in root. 1582 // Remove first file in root.
1614 EXPECT_TRUE(RemoveFile(file_in_root)); 1583 EXPECT_TRUE(RemoveFile(file_in_root));
1615 EXPECT_TRUE(FindFile(file_in_root) == NULL); 1584 EXPECT_TRUE(FindFile(file_in_root) == NULL);
1616 EXPECT_EQ(NULL, FindFileByResourceId(file_in_root_resource)); 1585 EXPECT_EQ(NULL, FindFileByResourceId(file_in_root_resource));
1617 EXPECT_TRUE(FindFile(dir_in_root) != NULL); 1586 EXPECT_TRUE(FindFile(dir_in_root) != NULL);
1618 EXPECT_TRUE((file = FindFile(file_in_subdir)) != NULL); 1587 EXPECT_TRUE((file = FindFile(file_in_subdir)) != NULL);
1619 EXPECT_EQ(file, FindFileByResourceId(file_in_subdir_resource)); 1588 EXPECT_EQ(file, FindFileByResourceId(file_in_subdir_resource));
1620 1589
1621 // Remove directory. 1590 // Remove directory.
1622 EXPECT_TRUE(RemoveFile(dir_in_root)); 1591 EXPECT_TRUE(RemoveFile(dir_in_root));
(...skipping 12 matching lines...) Expand all
1635 // Try removing root file element. 1604 // Try removing root file element.
1636 EXPECT_FALSE(RemoveFile(FilePath(FILE_PATH_LITERAL("gdata")))); 1605 EXPECT_FALSE(RemoveFile(FilePath(FILE_PATH_LITERAL("gdata"))));
1637 1606
1638 // Need this to ensure OnDirectoryChanged() is run. 1607 // Need this to ensure OnDirectoryChanged() is run.
1639 RunAllPendingForIO(); 1608 RunAllPendingForIO();
1640 } 1609 }
1641 1610
1642 TEST_F(GDataFileSystemTest, CreateDirectory) { 1611 TEST_F(GDataFileSystemTest, CreateDirectory) {
1643 LoadRootFeedDocument("root_feed.json"); 1612 LoadRootFeedDocument("root_feed.json");
1644 1613
1645 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1646 Eq(FilePath(FILE_PATH_LITERAL("gdata"))))).Times(1);
1647
1648 // Create directory in root. 1614 // Create directory in root.
1649 FilePath dir_path(FILE_PATH_LITERAL("gdata/New Folder 1")); 1615 FilePath dir_path(FILE_PATH_LITERAL("gdata/New Folder 1"));
1650 EXPECT_TRUE(FindFile(dir_path) == NULL); 1616 EXPECT_TRUE(FindFile(dir_path) == NULL);
1651 AddDirectoryFromFile(dir_path, "directory_entry_atom.json"); 1617 AddDirectoryFromFile(dir_path, "directory_entry_atom.json");
1652 EXPECT_TRUE(FindFile(dir_path) != NULL); 1618 EXPECT_TRUE(FindFile(dir_path) != NULL);
1653 1619
1654 EXPECT_CALL(*mock_sync_client_, OnDirectoryChanged(
1655 Eq(FilePath(FILE_PATH_LITERAL("gdata/New Folder 1"))))).Times(1);
1656
1657 // Create directory in a sub dirrectory. 1620 // Create directory in a sub dirrectory.
1658 FilePath subdir_path(FILE_PATH_LITERAL("gdata/New Folder 1/New Folder 2")); 1621 FilePath subdir_path(FILE_PATH_LITERAL("gdata/New Folder 1/New Folder 2"));
1659 EXPECT_TRUE(FindFile(subdir_path) == NULL); 1622 EXPECT_TRUE(FindFile(subdir_path) == NULL);
1660 AddDirectoryFromFile(subdir_path, "directory_entry_atom.json"); 1623 AddDirectoryFromFile(subdir_path, "directory_entry_atom.json");
1661 EXPECT_TRUE(FindFile(subdir_path) != NULL); 1624 EXPECT_TRUE(FindFile(subdir_path) != NULL);
1662 } 1625 }
1663 1626
1664 TEST_F(GDataFileSystemTest, FindFirstMissingParentDirectory) { 1627 TEST_F(GDataFileSystemTest, FindFirstMissingParentDirectory) {
1665 LoadRootFeedDocument("root_feed.json"); 1628 LoadRootFeedDocument("root_feed.json");
1666 1629
(...skipping 1181 matching lines...) Expand 10 before | Expand all | Expand 10 after
2848 2811
2849 // Verify account meta feed is saved to cache. 2812 // Verify account meta feed is saved to cache.
2850 RunAllPendingForIO(); 2813 RunAllPendingForIO();
2851 FilePath path = file_system_->cache_paths_[ 2814 FilePath path = file_system_->cache_paths_[
2852 GDataRootDirectory::CACHE_TYPE_META].Append( 2815 GDataRootDirectory::CACHE_TYPE_META].Append(
2853 FILE_PATH_LITERAL("account_metadata.json")); 2816 FILE_PATH_LITERAL("account_metadata.json"));
2854 EXPECT_TRUE(file_util::PathExists(path)); 2817 EXPECT_TRUE(file_util::PathExists(path));
2855 } 2818 }
2856 2819
2857 } // namespace gdata 2820 } // namespace gdata
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chromeos/gdata/mock_gdata_sync_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698