Index: chrome/browser/chromeos/drive/drive_resource_metadata_unittest.cc |
diff --git a/chrome/browser/chromeos/drive/drive_resource_metadata_unittest.cc b/chrome/browser/chromeos/drive/drive_resource_metadata_unittest.cc |
index b1cfe2b640c9fc4c9318c95cc87ec04e961ed0ca..25b37618a37a37a3b3d0748491cf95ecaf2c02f2 100644 |
--- a/chrome/browser/chromeos/drive/drive_resource_metadata_unittest.cc |
+++ b/chrome/browser/chromeos/drive/drive_resource_metadata_unittest.cc |
@@ -103,6 +103,10 @@ class DriveResourceMetadataTest : public testing::Test { |
Init(resource_metadata_.get()); |
} |
+ virtual void TearDown() OVERRIDE { |
+ resource_metadata_.reset(); |
+ } |
+ |
// Gets the entry info by path synchronously. Returns NULL on failure. |
scoped_ptr<DriveEntryProto> GetEntryInfoByPathSync( |
const base::FilePath& file_path) { |
@@ -139,7 +143,8 @@ class DriveResourceMetadataTest : public testing::Test { |
base::ScopedTempDir temp_dir_; |
scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_; |
- scoped_ptr<DriveResourceMetadata> resource_metadata_; |
+ scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> |
+ resource_metadata_; |
private: |
MessageLoopForUI message_loop_; |
@@ -240,40 +245,46 @@ TEST_F(DriveResourceMetadataTest, VersionCheck) { |
mutable_entry->set_upload_url(kResumableCreateMediaUrl); |
mutable_entry->set_title("drive"); |
- DriveResourceMetadata resource_metadata(kTestRootResourceId, |
- blocking_task_runner_); |
+ scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> |
+ resource_metadata(new DriveResourceMetadata(kTestRootResourceId, |
+ blocking_task_runner_)); |
std::string serialized_proto; |
EXPECT_TRUE(proto.SerializeToString(&serialized_proto)); |
// This should fail as the version is empty. |
- EXPECT_FALSE(ParseMetadataFromString(&resource_metadata, serialized_proto)); |
+ EXPECT_FALSE(ParseMetadataFromString(resource_metadata.get(), |
+ serialized_proto)); |
// Set an older version, and serialize. |
proto.set_version(kProtoVersion - 1); |
EXPECT_TRUE(proto.SerializeToString(&serialized_proto)); |
// This should fail as the version is older. |
- EXPECT_FALSE(ParseMetadataFromString(&resource_metadata, serialized_proto)); |
+ EXPECT_FALSE(ParseMetadataFromString(resource_metadata.get(), |
+ serialized_proto)); |
// Set the current version, and serialize. |
proto.set_version(kProtoVersion); |
EXPECT_TRUE(proto.SerializeToString(&serialized_proto)); |
// This should succeed as the version matches the current number. |
- EXPECT_TRUE(ParseMetadataFromString(&resource_metadata, serialized_proto)); |
+ EXPECT_TRUE(ParseMetadataFromString(resource_metadata.get(), |
+ serialized_proto)); |
// Set a newer version, and serialize. |
proto.set_version(kProtoVersion + 1); |
EXPECT_TRUE(proto.SerializeToString(&serialized_proto)); |
// This should fail as the version is newer. |
- EXPECT_FALSE(ParseMetadataFromString(&resource_metadata, serialized_proto)); |
+ EXPECT_FALSE(ParseMetadataFromString(resource_metadata.get(), |
+ serialized_proto)); |
} |
TEST_F(DriveResourceMetadataTest, LargestChangestamp) { |
- DriveResourceMetadata resource_metadata(kTestRootResourceId, |
- blocking_task_runner_); |
+ scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> |
+ resource_metadata(new DriveResourceMetadata(kTestRootResourceId, |
+ blocking_task_runner_)); |
int64 in_changestamp = 123456; |
DriveFileError error = DRIVE_FILE_ERROR_FAILED; |
- resource_metadata.SetLargestChangestamp( |
+ resource_metadata->SetLargestChangestamp( |
in_changestamp, |
base::Bind(&test_util::CopyErrorCodeFromFileOperationCallback, |
&error)); |
@@ -281,7 +292,7 @@ TEST_F(DriveResourceMetadataTest, LargestChangestamp) { |
EXPECT_EQ(DRIVE_FILE_OK, error); |
int64 out_changestamp = 0; |
- resource_metadata.GetLargestChangestamp( |
+ resource_metadata->GetLargestChangestamp( |
base::Bind(&CopyResultFromGetChangestampCallback, |
&out_changestamp)); |
google_apis::test_util::RunBlockingPoolTask(); |
@@ -289,15 +300,16 @@ TEST_F(DriveResourceMetadataTest, LargestChangestamp) { |
} |
TEST_F(DriveResourceMetadataTest, GetEntryInfoByResourceId_RootDirectory) { |
- DriveResourceMetadata resource_metadata(kTestRootResourceId, |
- blocking_task_runner_); |
+ scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> |
+ resource_metadata(new DriveResourceMetadata(kTestRootResourceId, |
+ blocking_task_runner_)); |
DriveFileError error = DRIVE_FILE_ERROR_FAILED; |
base::FilePath drive_file_path; |
scoped_ptr<DriveEntryProto> entry_proto; |
// Look up the root directory by its resource ID. |
- resource_metadata.GetEntryInfoByResourceId( |
+ resource_metadata->GetEntryInfoByResourceId( |
kTestRootResourceId, |
base::Bind(&test_util::CopyResultsFromGetEntryInfoWithFilePathCallback, |
&error, &drive_file_path, &entry_proto)); |
@@ -1190,10 +1202,12 @@ TEST_F(DriveResourceMetadataTest, PerDirectoryChangestamp) { |
const int kNewChangestamp = kTestChangestamp + 1; |
const char kSubDirectoryResourceId[] = "sub-directory-id"; |
- DriveResourceMetadata resource_metadata_original(kTestRootResourceId, |
- blocking_task_runner_); |
+ scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> |
+ resource_metadata_original(new DriveResourceMetadata( |
+ kTestRootResourceId, blocking_task_runner_)); |
+ |
DriveFileError error = DRIVE_FILE_ERROR_FAILED; |
- resource_metadata_original.SetLargestChangestamp( |
+ resource_metadata_original->SetLargestChangestamp( |
kNewChangestamp, |
google_apis::test_util::CreateCopyResultCallback(&error)); |
google_apis::test_util::RunBlockingPoolTask(); |
@@ -1206,19 +1220,20 @@ TEST_F(DriveResourceMetadataTest, PerDirectoryChangestamp) { |
directory_entry.set_parent_resource_id(kTestRootResourceId); |
directory_entry.set_title("directory"); |
base::FilePath file_path; |
- resource_metadata_original.AddEntry( |
+ resource_metadata_original->AddEntry( |
directory_entry, |
google_apis::test_util::CreateCopyResultCallback(&error, &file_path)); |
// At this point, both the root and the sub directory do not contain the |
// per-directory changestamp. |
- resource_metadata_original.MaybeSave(temp_dir_.path()); |
+ resource_metadata_original->MaybeSave(temp_dir_.path()); |
google_apis::test_util::RunBlockingPoolTask(); |
- DriveResourceMetadata resource_metadata(kTestRootResourceId, |
- blocking_task_runner_); |
+ scoped_ptr<DriveResourceMetadata, test_util::DestroyHelperForTests> |
+ resource_metadata(new DriveResourceMetadata(kTestRootResourceId, |
+ blocking_task_runner_)); |
// Load. This should propagate the largest changestamp to every directory. |
- resource_metadata.Load( |
+ resource_metadata->Load( |
temp_dir_.path(), |
google_apis::test_util::CreateCopyResultCallback(&error)); |
google_apis::test_util::RunBlockingPoolTask(); |
@@ -1226,7 +1241,7 @@ TEST_F(DriveResourceMetadataTest, PerDirectoryChangestamp) { |
// Confirm that the root directory contains the changestamp. |
scoped_ptr<DriveEntryProto> entry_proto; |
- resource_metadata.GetEntryInfoByPath( |
+ resource_metadata->GetEntryInfoByPath( |
base::FilePath::FromUTF8Unsafe("drive"), |
base::Bind(&test_util::CopyResultsFromGetEntryInfoCallback, |
&error, &entry_proto)); |
@@ -1236,7 +1251,7 @@ TEST_F(DriveResourceMetadataTest, PerDirectoryChangestamp) { |
entry_proto->directory_specific_info().changestamp()); |
// Confirm that the sub directory contains the changestamp. |
- resource_metadata.GetEntryInfoByPath( |
+ resource_metadata->GetEntryInfoByPath( |
base::FilePath::FromUTF8Unsafe("drive/directory"), |
base::Bind(&test_util::CopyResultsFromGetEntryInfoCallback, |
&error, &entry_proto)); |