| Index: chrome/browser/chromeos/gdata/gdata_file_system_unittest.cc
|
| diff --git a/chrome/browser/chromeos/gdata/gdata_file_system_unittest.cc b/chrome/browser/chromeos/gdata/gdata_file_system_unittest.cc
|
| index 2795e683a9830c5cb7ff93f590df8a548d73c572..65ea0525efd786da0f40e52636d2861a4c06cc5c 100644
|
| --- a/chrome/browser/chromeos/gdata/gdata_file_system_unittest.cc
|
| +++ b/chrome/browser/chromeos/gdata/gdata_file_system_unittest.cc
|
| @@ -422,10 +422,10 @@ class GDataFileSystemTest : public testing::Test {
|
|
|
| // Helper function to call GetCacheEntry from origin thread.
|
| // Note: This method calls RunAllPendingForIO.
|
| - scoped_ptr<GDataCache::CacheEntry> GetCacheEntryFromOriginThread(
|
| - const std::string& resource_id,
|
| - const std::string& md5) {
|
| - scoped_ptr<GDataCache::CacheEntry> cache_entry;
|
| + bool GetCacheEntryFromOriginThread(const std::string& resource_id,
|
| + const std::string& md5,
|
| + GDataCache::CacheEntry* cache_entry) {
|
| + bool success = false;
|
| content::BrowserThread::GetBlockingPool()
|
| ->GetSequencedTaskRunner(sequence_token_)->PostTask(
|
| FROM_HERE,
|
| @@ -434,23 +434,26 @@ class GDataFileSystemTest : public testing::Test {
|
| base::Unretained(this),
|
| resource_id,
|
| md5,
|
| - &cache_entry));
|
| + cache_entry,
|
| + &success));
|
| RunAllPendingForIO();
|
| - return cache_entry.Pass();
|
| + return success;
|
| }
|
|
|
| // Used to implement GetCacheEntry.
|
| void GetCacheEntryFromOriginThreadInternal(
|
| const std::string& resource_id,
|
| const std::string& md5,
|
| - scoped_ptr<GDataCache::CacheEntry>* cache_entry) {
|
| - cache_entry->reset(cache_->GetCacheEntry(resource_id, md5).release());
|
| + GDataCache::CacheEntry* cache_entry,
|
| + bool* success) {
|
| + *success = cache_->GetCacheEntry(resource_id, md5, cache_entry);
|
| }
|
|
|
| // Returns true if the cache entry exists for the given resource ID and MD5.
|
| bool CacheEntryExists(const std::string& resource_id,
|
| const std::string& md5) {
|
| - return GetCacheEntryFromOriginThread(resource_id, md5).get();
|
| + GDataCache::CacheEntry cache_entry;
|
| + return GetCacheEntryFromOriginThread(resource_id, md5, &cache_entry);
|
| }
|
|
|
| // Returns true if the cache file exists for the given resource ID and MD5.
|
| @@ -566,10 +569,11 @@ class GDataFileSystemTest : public testing::Test {
|
| EXPECT_EQ(expected_error_, error);
|
|
|
| // Verify cache map.
|
| - scoped_ptr<GDataCache::CacheEntry> cache_entry =
|
| - GetCacheEntryFromOriginThread(resource_id, md5);
|
| - if (cache_entry.get())
|
| - EXPECT_TRUE(cache_entry->IsDirty());
|
| + GDataCache::CacheEntry cache_entry;
|
| + const bool cache_entry_found =
|
| + GetCacheEntryFromOriginThread(resource_id, md5, &cache_entry);
|
| + if (cache_entry_found)
|
| + EXPECT_TRUE(cache_entry.IsDirty());
|
|
|
| // If entry doesn't exist, verify that:
|
| // - no files with "<resource_id>.* exists in persistent and tmp dirs
|
| @@ -591,7 +595,7 @@ class GDataFileSystemTest : public testing::Test {
|
| PathToVerify(cache_->GetCacheFilePath(resource_id, "",
|
| GDataCache::CACHE_TYPE_OUTGOING,
|
| GDataCache::CACHED_FILE_FROM_SERVER), FilePath()));
|
| - if (!cache_entry.get()) {
|
| + if (!cache_entry_found) {
|
| for (size_t i = 0; i < paths_to_verify.size(); ++i) {
|
| file_util::FileEnumerator enumerator(
|
| paths_to_verify[i].path_to_scan.DirName(), false /* not recursive*/,
|
| @@ -622,7 +626,7 @@ class GDataFileSystemTest : public testing::Test {
|
| GDataCache::CACHE_TYPE_OUTGOING,
|
| GDataCache::CACHED_FILE_FROM_SERVER);
|
|
|
| - if (cache_entry->IsPinned()) {
|
| + if (cache_entry.IsPinned()) {
|
| // Change expected_existing_path of CACHE_TYPE_PINNED (index 2).
|
| paths_to_verify[2].expected_existing_path =
|
| GetCacheFilePath(resource_id,
|
| @@ -942,11 +946,11 @@ class GDataFileSystemTest : public testing::Test {
|
| std::string md5;
|
| if (GDataCache::IsCachePresent(resource.cache_state))
|
| md5 = resource.md5;
|
| - scoped_ptr<GDataCache::CacheEntry> cache_entry =
|
| - GetCacheEntryFromOriginThread(resource.resource_id, md5);
|
| - ASSERT_TRUE(cache_entry.get());
|
| - EXPECT_EQ(resource.cache_state, cache_entry->cache_state);
|
| - EXPECT_EQ(resource.expected_sub_dir_type, cache_entry->sub_dir_type);
|
| + GDataCache::CacheEntry cache_entry;
|
| + ASSERT_TRUE(GetCacheEntryFromOriginThread(
|
| + resource.resource_id, md5, &cache_entry));
|
| + EXPECT_EQ(resource.cache_state, cache_entry.cache_state);
|
| + EXPECT_EQ(resource.expected_sub_dir_type, cache_entry.sub_dir_type);
|
| }
|
| }
|
|
|
| @@ -958,15 +962,16 @@ class GDataFileSystemTest : public testing::Test {
|
| EXPECT_EQ(expected_error_, error);
|
|
|
| // Verify cache map.
|
| - scoped_ptr<GDataCache::CacheEntry> cache_entry =
|
| - GetCacheEntryFromOriginThread(resource_id, md5);
|
| + GDataCache::CacheEntry cache_entry;
|
| if (GDataCache::IsCachePresent(expected_cache_state_) ||
|
| GDataCache::IsCachePinned(expected_cache_state_)) {
|
| - ASSERT_TRUE(cache_entry.get());
|
| - EXPECT_EQ(expected_cache_state_, cache_entry->cache_state);
|
| - EXPECT_EQ(expected_sub_dir_type_, cache_entry->sub_dir_type);
|
| + ASSERT_TRUE(GetCacheEntryFromOriginThread(
|
| + resource_id, md5, &cache_entry));
|
| + EXPECT_EQ(expected_cache_state_, cache_entry.cache_state);
|
| + EXPECT_EQ(expected_sub_dir_type_, cache_entry.sub_dir_type);
|
| } else {
|
| - EXPECT_FALSE(cache_entry.get());
|
| + EXPECT_FALSE(GetCacheEntryFromOriginThread(
|
| + resource_id, md5, &cache_entry));
|
| }
|
|
|
| // Verify actual cache file.
|
|
|