Index: webkit/blob/blob_storage_controller_unittest.cc |
=================================================================== |
--- webkit/blob/blob_storage_controller_unittest.cc (revision 102629) |
+++ webkit/blob/blob_storage_controller_unittest.cc (working copy) |
@@ -15,6 +15,21 @@ |
namespace webkit_blob { |
+namespace { |
+ |
+void RegisterBlobUrl(BlobStorageController* controller, |
+ const GURL& url, const BlobData* data) { |
+ controller->RegisterUnfinalizedBlobUrl(url); |
+ for (std::vector<BlobData::Item>::const_iterator iter = |
+ data->items().begin(); |
+ iter != data->items().end(); ++iter) { |
+ controller->AppendBlobDataItem(url, *iter); |
+ } |
+ controller->FinalizeBlob(url, data->content_type()); |
+} |
+ |
+} |
+ |
TEST(BlobStorageControllerTest, RegisterBlobUrl) { |
// Setup a set of blob data for testing. |
base::Time time1, time2; |
@@ -41,39 +56,38 @@ |
canonicalized_blob_data2->AppendFile(FilePath(FILE_PATH_LITERAL("File2.txt")), |
0, 20, time2); |
- scoped_ptr<BlobStorageController> blob_storage_controller( |
- new BlobStorageController()); |
+ BlobStorageController blob_storage_controller; |
// Test registering a blob URL referring to the blob data containing only |
// data and file. |
GURL blob_url1("blob://url_1"); |
- blob_storage_controller->RegisterBlobUrl(blob_url1, blob_data1); |
+ RegisterBlobUrl(&blob_storage_controller, blob_url1, blob_data1); |
BlobData* blob_data_found = |
- blob_storage_controller->GetBlobDataFromUrl(blob_url1); |
+ blob_storage_controller.GetBlobDataFromUrl(blob_url1); |
ASSERT_TRUE(blob_data_found != NULL); |
EXPECT_TRUE(*blob_data_found == *blob_data1); |
// Test registering a blob URL referring to the blob data containing data, |
// file and blob. |
GURL blob_url2("blob://url_2"); |
- blob_storage_controller->RegisterBlobUrl(blob_url2, blob_data2); |
+ RegisterBlobUrl(&blob_storage_controller, blob_url2, blob_data2); |
- blob_data_found = blob_storage_controller->GetBlobDataFromUrl(blob_url2); |
+ blob_data_found = blob_storage_controller.GetBlobDataFromUrl(blob_url2); |
ASSERT_TRUE(blob_data_found != NULL); |
EXPECT_TRUE(*blob_data_found == *canonicalized_blob_data2); |
// Test registering a blob URL referring to existent blob URL. |
GURL blob_url3("blob://url_3"); |
- blob_storage_controller->RegisterBlobUrlFrom(blob_url3, blob_url1); |
+ blob_storage_controller.RegisterBlobUrlFrom(blob_url3, blob_url1); |
- blob_data_found = blob_storage_controller->GetBlobDataFromUrl(blob_url3); |
+ blob_data_found = blob_storage_controller.GetBlobDataFromUrl(blob_url3); |
ASSERT_TRUE(blob_data_found != NULL); |
EXPECT_TRUE(*blob_data_found == *blob_data1); |
// Test unregistering a blob URL. |
- blob_storage_controller->UnregisterBlobUrl(blob_url3); |
- blob_data_found = blob_storage_controller->GetBlobDataFromUrl(blob_url3); |
+ blob_storage_controller.UnregisterBlobUrl(blob_url3); |
+ blob_data_found = blob_storage_controller.GetBlobDataFromUrl(blob_url3); |
EXPECT_TRUE(!blob_data_found); |
} |
@@ -83,26 +97,24 @@ |
base::Time::FromString("Tue, 15 Nov 1994, 12:45:26 GMT", &time1); |
base::Time::FromString("Mon, 14 Nov 1994, 11:30:49 GMT", &time2); |
- scoped_ptr<BlobStorageController> blob_storage_controller( |
- new BlobStorageController()); |
- |
+ BlobStorageController blob_storage_controller; |
scoped_refptr<BlobData> blob_data(new BlobData()); |
GURL blob_url0("blob://url_0"); |
- blob_storage_controller->RegisterBlobUrl(blob_url0, blob_data); |
+ RegisterBlobUrl(&blob_storage_controller, blob_url0, blob_data); |
blob_data->AppendData("BlobData"); |
blob_data->AppendFile( |
FilePath(FILE_PATH_LITERAL("BlobFile.txt")), 0, 20, time1); |
GURL blob_url1("blob://url_1"); |
- blob_storage_controller->RegisterBlobUrl(blob_url1, blob_data); |
+ RegisterBlobUrl(&blob_storage_controller, blob_url1, blob_data); |
GURL blob_url2("blob://url_2"); |
- blob_storage_controller->RegisterBlobUrlFrom(blob_url2, blob_url1); |
+ blob_storage_controller.RegisterBlobUrlFrom(blob_url2, blob_url1); |
GURL blob_url3("blob://url_3"); |
- blob_storage_controller->RegisterBlobUrlFrom(blob_url3, blob_url2); |
+ blob_storage_controller.RegisterBlobUrlFrom(blob_url3, blob_url2); |
// Setup upload data elements for comparison. |
UploadData::Element blob_element1, blob_element2; |
@@ -132,7 +144,7 @@ |
upload_element2.file_range_length(), |
upload_element2.expected_file_modification_time()); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 2U); |
EXPECT_TRUE(upload_data->elements()->at(0) == upload_element1); |
EXPECT_TRUE(upload_data->elements()->at(1) == upload_element2); |
@@ -141,14 +153,14 @@ |
upload_data = new UploadData(); |
upload_data->AppendBlob(blob_url0); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 0U); |
// Test having only one blob reference. |
upload_data = new UploadData(); |
upload_data->AppendBlob(blob_url1); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 2U); |
EXPECT_TRUE(upload_data->elements()->at(0) == blob_element1); |
EXPECT_TRUE(upload_data->elements()->at(1) == blob_element2); |
@@ -165,7 +177,7 @@ |
upload_element2.file_range_length(), |
upload_element2.expected_file_modification_time()); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 4U); |
EXPECT_TRUE(upload_data->elements()->at(0) == blob_element1); |
EXPECT_TRUE(upload_data->elements()->at(1) == blob_element2); |
@@ -184,7 +196,7 @@ |
upload_element2.expected_file_modification_time()); |
upload_data->AppendBlob(blob_url1); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 4U); |
EXPECT_TRUE(upload_data->elements()->at(0) == upload_element1); |
EXPECT_TRUE(upload_data->elements()->at(1) == upload_element2); |
@@ -203,7 +215,7 @@ |
upload_element2.file_range_length(), |
upload_element2.expected_file_modification_time()); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 4U); |
EXPECT_TRUE(upload_data->elements()->at(0) == upload_element1); |
EXPECT_TRUE(upload_data->elements()->at(1) == blob_element1); |
@@ -224,7 +236,7 @@ |
upload_element2.file_range_length(), |
upload_element2.expected_file_modification_time()); |
- blob_storage_controller->ResolveBlobReferencesInUploadData(upload_data.get()); |
+ blob_storage_controller.ResolveBlobReferencesInUploadData(upload_data.get()); |
ASSERT_EQ(upload_data->elements()->size(), 8U); |
EXPECT_TRUE(upload_data->elements()->at(0) == blob_element1); |
EXPECT_TRUE(upload_data->elements()->at(1) == blob_element2); |