OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 <stddef.h> | 5 #include <stddef.h> |
6 #include <stdint.h> | 6 #include <stdint.h> |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
11 #include "storage/browser/blob/blob_async_transport_request_builder.h" | 11 #include "storage/browser/blob/blob_async_transport_request_builder.h" |
12 #include "testing/gtest/include/gtest/gtest.h" | 12 #include "testing/gtest/include/gtest/gtest.h" |
13 | 13 |
14 namespace storage { | 14 namespace storage { |
15 namespace { | 15 namespace { |
16 | 16 |
17 const char kNewUUID[] = "newUUID"; | 17 const char kNewUUID[] = "newUUID"; |
18 const base::FilePath kFuturePopulatingFilePath = base::FilePath::FromUTF8Unsafe( | 18 const base::FilePath kFuturePopulatingFilePath = base::FilePath::FromUTF8Unsafe( |
19 std::string(BlobDataBuilder::kAppendFutureFileTemporaryFileName)); | 19 std::string(BlobDataBuilder::kFutureFileName)); |
20 const char kFakeBlobUUID[] = "fakeBlob"; | 20 const char kFakeBlobUUID[] = "fakeBlob"; |
21 | 21 |
22 void AddMemoryItem(size_t length, std::vector<DataElement>* out) { | 22 void AddMemoryItem(size_t length, std::vector<DataElement>* out) { |
23 DataElement bytes; | 23 DataElement bytes; |
24 bytes.SetToBytesDescription(length); | 24 bytes.SetToBytesDescription(length); |
25 out->push_back(bytes); | 25 out->push_back(bytes); |
26 } | 26 } |
27 | 27 |
28 void AddShortcutMemoryItem(size_t length, std::vector<DataElement>* out) { | 28 void AddShortcutMemoryItem(size_t length, std::vector<DataElement>* out) { |
29 DataElement bytes; | 29 DataElement bytes; |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
80 EXPECT_EQ(1u, strategy.requests().size()); | 80 EXPECT_EQ(1u, strategy.requests().size()); |
81 | 81 |
82 auto& memory_item_request = strategy.requests().at(0); | 82 auto& memory_item_request = strategy.requests().at(0); |
83 EXPECT_EQ(0u, memory_item_request.browser_item_index); | 83 EXPECT_EQ(0u, memory_item_request.browser_item_index); |
84 EXPECT_EQ(0u, memory_item_request.browser_item_offset); | 84 EXPECT_EQ(0u, memory_item_request.browser_item_offset); |
85 EXPECT_EQ( | 85 EXPECT_EQ( |
86 BlobItemBytesRequest::CreateFileRequest(0u, 0u, 0ull, 305ull, 0u, 0ull), | 86 BlobItemBytesRequest::CreateFileRequest(0u, 0u, 0ull, 305ull, 0u, 0ull), |
87 memory_item_request.message); | 87 memory_item_request.message); |
88 | 88 |
89 BlobDataBuilder expected_builder(kNewUUID); | 89 BlobDataBuilder expected_builder(kNewUUID); |
90 expected_builder.AppendFile(kFuturePopulatingFilePath, 0, 305, | 90 expected_builder.AppendFile(kFuturePopulatingFilePath.AddExtension("0"), 0, |
91 base::Time::FromDoubleT(0)); | 91 305, base::Time::FromDoubleT(0)); |
92 EXPECT_EQ(expected_builder, builder); | 92 EXPECT_EQ(expected_builder, builder); |
93 } | 93 } |
94 | 94 |
95 TEST(BlobAsyncTransportRequestBuilderTest, TestLargeBlockToFiles) { | 95 TEST(BlobAsyncTransportRequestBuilderTest, TestLargeBlockToFiles) { |
96 BlobAsyncTransportRequestBuilder strategy; | 96 BlobAsyncTransportRequestBuilder strategy; |
97 BlobDataBuilder builder(kNewUUID); | 97 BlobDataBuilder builder(kNewUUID); |
98 std::vector<DataElement> infos; | 98 std::vector<DataElement> infos; |
99 | 99 |
100 AddMemoryItem(1000, &infos); | 100 AddMemoryItem(1000, &infos); |
101 strategy.InitializeForFileRequests(400, // max_file_size | 101 strategy.InitializeForFileRequests(400, // max_file_size |
(...skipping 22 matching lines...) Expand all Loading... |
124 memory_item_request.message); | 124 memory_item_request.message); |
125 | 125 |
126 memory_item_request = strategy.requests().at(2); | 126 memory_item_request = strategy.requests().at(2); |
127 EXPECT_EQ(2u, memory_item_request.browser_item_index); | 127 EXPECT_EQ(2u, memory_item_request.browser_item_index); |
128 EXPECT_EQ(0u, memory_item_request.browser_item_offset); | 128 EXPECT_EQ(0u, memory_item_request.browser_item_offset); |
129 EXPECT_EQ( | 129 EXPECT_EQ( |
130 BlobItemBytesRequest::CreateFileRequest(2u, 0u, 800ull, 200ull, 2u, 0ull), | 130 BlobItemBytesRequest::CreateFileRequest(2u, 0u, 800ull, 200ull, 2u, 0ull), |
131 memory_item_request.message); | 131 memory_item_request.message); |
132 | 132 |
133 BlobDataBuilder expected_builder(kNewUUID); | 133 BlobDataBuilder expected_builder(kNewUUID); |
134 expected_builder.AppendFile(kFuturePopulatingFilePath, 0, 400, | 134 expected_builder.AppendFile(kFuturePopulatingFilePath.AddExtension("0"), 0, |
135 base::Time::FromDoubleT(0)); | 135 400, base::Time::FromDoubleT(0)); |
136 expected_builder.AppendFile(kFuturePopulatingFilePath, 0, 400, | 136 expected_builder.AppendFile(kFuturePopulatingFilePath.AddExtension("1"), 0, |
137 base::Time::FromDoubleT(0)); | 137 400, base::Time::FromDoubleT(0)); |
138 expected_builder.AppendFile(kFuturePopulatingFilePath, 0, 200, | 138 expected_builder.AppendFile(kFuturePopulatingFilePath.AddExtension("2"), 0, |
139 base::Time::FromDoubleT(0)); | 139 200, base::Time::FromDoubleT(0)); |
140 EXPECT_EQ(expected_builder, builder); | 140 EXPECT_EQ(expected_builder, builder); |
141 } | 141 } |
142 | 142 |
143 TEST(BlobAsyncTransportRequestBuilderTest, | 143 TEST(BlobAsyncTransportRequestBuilderTest, |
144 TestLargeBlocksConsolidatingInFiles) { | 144 TestLargeBlocksConsolidatingInFiles) { |
145 BlobAsyncTransportRequestBuilder strategy; | 145 BlobAsyncTransportRequestBuilder strategy; |
146 BlobDataBuilder builder(kNewUUID); | 146 BlobDataBuilder builder(kNewUUID); |
147 std::vector<DataElement> infos; | 147 std::vector<DataElement> infos; |
148 | 148 |
149 // We should have 3 storage items for the memory, two files, 400 each. | 149 // We should have 3 storage items for the memory, two files, 400 each. |
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
347 // We still populate future data, as the strategy assumes we will be | 347 // We still populate future data, as the strategy assumes we will be |
348 // requesting the data. | 348 // requesting the data. |
349 BlobDataBuilder expected_builder(kNewUUID); | 349 BlobDataBuilder expected_builder(kNewUUID); |
350 expected_builder.AppendFutureData(10); | 350 expected_builder.AppendFutureData(10); |
351 expected_builder.AppendBlob(kFakeBlobUUID); | 351 expected_builder.AppendBlob(kFakeBlobUUID); |
352 expected_builder.AppendFutureData(80); | 352 expected_builder.AppendFutureData(80); |
353 EXPECT_EQ(expected_builder, builder); | 353 EXPECT_EQ(expected_builder, builder); |
354 } | 354 } |
355 } // namespace | 355 } // namespace |
356 } // namespace storage | 356 } // namespace storage |
OLD | NEW |