OLD | NEW |
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 "net/base/elements_upload_data_stream.h" | 5 #include "net/base/elements_upload_data_stream.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <limits> | 10 #include <limits> |
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
156 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 156 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
157 ASSERT_THAT(stream->Init(CompletionCallback(), BoundNetLog()), IsOk()); | 157 ASSERT_THAT(stream->Init(CompletionCallback(), BoundNetLog()), IsOk()); |
158 EXPECT_TRUE(stream->IsInMemory()); | 158 EXPECT_TRUE(stream->IsInMemory()); |
159 EXPECT_EQ(0U, stream->size()); | 159 EXPECT_EQ(0U, stream->size()); |
160 EXPECT_EQ(0U, stream->position()); | 160 EXPECT_EQ(0U, stream->position()); |
161 EXPECT_TRUE(stream->IsEOF()); | 161 EXPECT_TRUE(stream->IsEOF()); |
162 } | 162 } |
163 | 163 |
164 TEST_F(ElementsUploadDataStreamTest, ConsumeAllBytes) { | 164 TEST_F(ElementsUploadDataStreamTest, ConsumeAllBytes) { |
165 element_readers_.push_back( | 165 element_readers_.push_back( |
166 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 166 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
167 std::unique_ptr<UploadDataStream> stream( | 167 std::unique_ptr<UploadDataStream> stream( |
168 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 168 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
169 ASSERT_THAT(stream->Init(CompletionCallback(), BoundNetLog()), IsOk()); | 169 ASSERT_THAT(stream->Init(CompletionCallback(), BoundNetLog()), IsOk()); |
170 EXPECT_TRUE(stream->IsInMemory()); | 170 EXPECT_TRUE(stream->IsInMemory()); |
171 EXPECT_EQ(kTestDataSize, stream->size()); | 171 EXPECT_EQ(kTestDataSize, stream->size()); |
172 EXPECT_EQ(0U, stream->position()); | 172 EXPECT_EQ(0U, stream->position()); |
173 EXPECT_FALSE(stream->IsEOF()); | 173 EXPECT_FALSE(stream->IsEOF()); |
174 scoped_refptr<IOBuffer> buf = new IOBuffer(kTestBufferSize); | 174 scoped_refptr<IOBuffer> buf = new IOBuffer(kTestBufferSize); |
175 while (!stream->IsEOF()) { | 175 while (!stream->IsEOF()) { |
176 int bytes_read = | 176 int bytes_read = |
177 stream->Read(buf.get(), kTestBufferSize, CompletionCallback()); | 177 stream->Read(buf.get(), kTestBufferSize, CompletionCallback()); |
178 ASSERT_LE(0, bytes_read); // Not an error. | 178 ASSERT_LE(0, bytes_read); // Not an error. |
179 } | 179 } |
180 EXPECT_EQ(kTestDataSize, stream->position()); | 180 EXPECT_EQ(kTestDataSize, stream->position()); |
181 ASSERT_TRUE(stream->IsEOF()); | 181 ASSERT_TRUE(stream->IsEOF()); |
182 } | 182 } |
183 | 183 |
184 TEST_F(ElementsUploadDataStreamTest, File) { | 184 TEST_F(ElementsUploadDataStreamTest, File) { |
185 base::FilePath temp_file_path; | 185 base::FilePath temp_file_path; |
186 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 186 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
187 &temp_file_path)); | 187 &temp_file_path)); |
188 ASSERT_EQ(static_cast<int>(kTestDataSize), | 188 ASSERT_EQ(static_cast<int>(kTestDataSize), |
189 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 189 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
190 | 190 |
191 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 191 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
192 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 192 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
193 std::numeric_limits<uint64_t>::max(), base::Time()))); | 193 std::numeric_limits<uint64_t>::max(), base::Time())); |
194 | 194 |
195 TestCompletionCallback init_callback; | 195 TestCompletionCallback init_callback; |
196 std::unique_ptr<UploadDataStream> stream( | 196 std::unique_ptr<UploadDataStream> stream( |
197 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 197 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
198 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), | 198 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), |
199 IsError(ERR_IO_PENDING)); | 199 IsError(ERR_IO_PENDING)); |
200 ASSERT_THAT(init_callback.WaitForResult(), IsOk()); | 200 ASSERT_THAT(init_callback.WaitForResult(), IsOk()); |
201 EXPECT_FALSE(stream->IsInMemory()); | 201 EXPECT_FALSE(stream->IsInMemory()); |
202 EXPECT_EQ(kTestDataSize, stream->size()); | 202 EXPECT_EQ(kTestDataSize, stream->size()); |
203 EXPECT_EQ(0U, stream->position()); | 203 EXPECT_EQ(0U, stream->position()); |
(...skipping 14 matching lines...) Expand all Loading... |
218 base::FilePath temp_file_path; | 218 base::FilePath temp_file_path; |
219 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 219 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
220 &temp_file_path)); | 220 &temp_file_path)); |
221 ASSERT_EQ(static_cast<int>(kTestDataSize), | 221 ASSERT_EQ(static_cast<int>(kTestDataSize), |
222 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 222 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
223 const uint64_t kFakeSize = kTestDataSize * 2; | 223 const uint64_t kFakeSize = kTestDataSize * 2; |
224 | 224 |
225 UploadFileElementReader::ScopedOverridingContentLengthForTests | 225 UploadFileElementReader::ScopedOverridingContentLengthForTests |
226 overriding_content_length(kFakeSize); | 226 overriding_content_length(kFakeSize); |
227 | 227 |
228 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 228 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
229 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 229 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
230 std::numeric_limits<uint64_t>::max(), base::Time()))); | 230 std::numeric_limits<uint64_t>::max(), base::Time())); |
231 | 231 |
232 TestCompletionCallback init_callback; | 232 TestCompletionCallback init_callback; |
233 std::unique_ptr<UploadDataStream> stream( | 233 std::unique_ptr<UploadDataStream> stream( |
234 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 234 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
235 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), | 235 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), |
236 IsError(ERR_IO_PENDING)); | 236 IsError(ERR_IO_PENDING)); |
237 ASSERT_THAT(init_callback.WaitForResult(), IsOk()); | 237 ASSERT_THAT(init_callback.WaitForResult(), IsOk()); |
238 EXPECT_FALSE(stream->IsInMemory()); | 238 EXPECT_FALSE(stream->IsInMemory()); |
239 EXPECT_EQ(kFakeSize, stream->size()); | 239 EXPECT_EQ(kFakeSize, stream->size()); |
240 EXPECT_EQ(0U, stream->position()); | 240 EXPECT_EQ(0U, stream->position()); |
(...skipping 20 matching lines...) Expand all Loading... |
261 TEST_F(ElementsUploadDataStreamTest, ReadErrorSync) { | 261 TEST_F(ElementsUploadDataStreamTest, ReadErrorSync) { |
262 // This element cannot be read. | 262 // This element cannot be read. |
263 std::unique_ptr<MockUploadElementReader> reader( | 263 std::unique_ptr<MockUploadElementReader> reader( |
264 new MockUploadElementReader(kTestDataSize, true)); | 264 new MockUploadElementReader(kTestDataSize, true)); |
265 EXPECT_CALL(*reader, Init(_)).WillOnce(Return(OK)); | 265 EXPECT_CALL(*reader, Init(_)).WillOnce(Return(OK)); |
266 reader->SetReadExpectation(ERR_FAILED); | 266 reader->SetReadExpectation(ERR_FAILED); |
267 element_readers_.push_back(std::move(reader)); | 267 element_readers_.push_back(std::move(reader)); |
268 | 268 |
269 // This element is ignored because of the error from the previous reader. | 269 // This element is ignored because of the error from the previous reader. |
270 element_readers_.push_back( | 270 element_readers_.push_back( |
271 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 271 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
272 | 272 |
273 std::unique_ptr<UploadDataStream> stream( | 273 std::unique_ptr<UploadDataStream> stream( |
274 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 274 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
275 | 275 |
276 // Run Init(). | 276 // Run Init(). |
277 ASSERT_THAT(stream->Init(CompletionCallback(), BoundNetLog()), IsOk()); | 277 ASSERT_THAT(stream->Init(CompletionCallback(), BoundNetLog()), IsOk()); |
278 EXPECT_EQ(kTestDataSize*2, stream->size()); | 278 EXPECT_EQ(kTestDataSize*2, stream->size()); |
279 EXPECT_EQ(0U, stream->position()); | 279 EXPECT_EQ(0U, stream->position()); |
280 EXPECT_FALSE(stream->IsEOF()); | 280 EXPECT_FALSE(stream->IsEOF()); |
281 | 281 |
(...skipping 14 matching lines...) Expand all Loading... |
296 TEST_F(ElementsUploadDataStreamTest, ReadErrorAsync) { | 296 TEST_F(ElementsUploadDataStreamTest, ReadErrorAsync) { |
297 // This element cannot be read. | 297 // This element cannot be read. |
298 std::unique_ptr<MockUploadElementReader> reader( | 298 std::unique_ptr<MockUploadElementReader> reader( |
299 new MockUploadElementReader(kTestDataSize, false)); | 299 new MockUploadElementReader(kTestDataSize, false)); |
300 reader->SetAsyncInitExpectation(OK); | 300 reader->SetAsyncInitExpectation(OK); |
301 reader->SetReadExpectation(ERR_FAILED); | 301 reader->SetReadExpectation(ERR_FAILED); |
302 element_readers_.push_back(std::move(reader)); | 302 element_readers_.push_back(std::move(reader)); |
303 | 303 |
304 // This element is ignored because of the error from the previous reader. | 304 // This element is ignored because of the error from the previous reader. |
305 element_readers_.push_back( | 305 element_readers_.push_back( |
306 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 306 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
307 | 307 |
308 std::unique_ptr<UploadDataStream> stream( | 308 std::unique_ptr<UploadDataStream> stream( |
309 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 309 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
310 | 310 |
311 // Run Init(). | 311 // Run Init(). |
312 TestCompletionCallback init_callback; | 312 TestCompletionCallback init_callback; |
313 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), | 313 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), |
314 IsError(ERR_IO_PENDING)); | 314 IsError(ERR_IO_PENDING)); |
315 EXPECT_THAT(init_callback.WaitForResult(), IsOk()); | 315 EXPECT_THAT(init_callback.WaitForResult(), IsOk()); |
316 EXPECT_EQ(kTestDataSize*2, stream->size()); | 316 EXPECT_EQ(kTestDataSize*2, stream->size()); |
(...skipping 18 matching lines...) Expand all Loading... |
335 | 335 |
336 TEST_F(ElementsUploadDataStreamTest, FileAndBytes) { | 336 TEST_F(ElementsUploadDataStreamTest, FileAndBytes) { |
337 base::FilePath temp_file_path; | 337 base::FilePath temp_file_path; |
338 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 338 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
339 &temp_file_path)); | 339 &temp_file_path)); |
340 ASSERT_EQ(static_cast<int>(kTestDataSize), | 340 ASSERT_EQ(static_cast<int>(kTestDataSize), |
341 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 341 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
342 | 342 |
343 const uint64_t kFileRangeOffset = 1; | 343 const uint64_t kFileRangeOffset = 1; |
344 const uint64_t kFileRangeLength = 4; | 344 const uint64_t kFileRangeLength = 4; |
345 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 345 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
346 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, | 346 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, |
347 kFileRangeOffset, kFileRangeLength, base::Time()))); | 347 kFileRangeOffset, kFileRangeLength, base::Time())); |
348 | 348 |
349 element_readers_.push_back( | 349 element_readers_.push_back( |
350 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 350 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
351 | 351 |
352 const uint64_t kStreamSize = kTestDataSize + kFileRangeLength; | 352 const uint64_t kStreamSize = kTestDataSize + kFileRangeLength; |
353 TestCompletionCallback init_callback; | 353 TestCompletionCallback init_callback; |
354 std::unique_ptr<UploadDataStream> stream( | 354 std::unique_ptr<UploadDataStream> stream( |
355 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 355 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
356 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), | 356 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), |
357 IsError(ERR_IO_PENDING)); | 357 IsError(ERR_IO_PENDING)); |
358 ASSERT_THAT(init_callback.WaitForResult(), IsOk()); | 358 ASSERT_THAT(init_callback.WaitForResult(), IsOk()); |
359 EXPECT_FALSE(stream->IsInMemory()); | 359 EXPECT_FALSE(stream->IsInMemory()); |
360 EXPECT_EQ(kStreamSize, stream->size()); | 360 EXPECT_EQ(kStreamSize, stream->size()); |
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
531 read_callback3.WaitForResult()); | 531 read_callback3.WaitForResult()); |
532 } | 532 } |
533 | 533 |
534 void ElementsUploadDataStreamTest::FileChangedHelper( | 534 void ElementsUploadDataStreamTest::FileChangedHelper( |
535 const base::FilePath& file_path, | 535 const base::FilePath& file_path, |
536 const base::Time& time, | 536 const base::Time& time, |
537 bool error_expected) { | 537 bool error_expected) { |
538 // Don't use element_readers_ here, as this function is called twice, and | 538 // Don't use element_readers_ here, as this function is called twice, and |
539 // reusing element_readers_ is wrong. | 539 // reusing element_readers_ is wrong. |
540 std::vector<std::unique_ptr<UploadElementReader>> element_readers; | 540 std::vector<std::unique_ptr<UploadElementReader>> element_readers; |
541 element_readers.push_back(base::WrapUnique(new UploadFileElementReader( | 541 element_readers.push_back(base::MakeUnique<UploadFileElementReader>( |
542 base::ThreadTaskRunnerHandle::Get().get(), file_path, 1, 2, time))); | 542 base::ThreadTaskRunnerHandle::Get().get(), file_path, 1, 2, time)); |
543 | 543 |
544 TestCompletionCallback init_callback; | 544 TestCompletionCallback init_callback; |
545 std::unique_ptr<UploadDataStream> stream( | 545 std::unique_ptr<UploadDataStream> stream( |
546 new ElementsUploadDataStream(std::move(element_readers), 0)); | 546 new ElementsUploadDataStream(std::move(element_readers), 0)); |
547 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), | 547 ASSERT_THAT(stream->Init(init_callback.callback(), BoundNetLog()), |
548 IsError(ERR_IO_PENDING)); | 548 IsError(ERR_IO_PENDING)); |
549 int error_code = init_callback.WaitForResult(); | 549 int error_code = init_callback.WaitForResult(); |
550 if (error_expected) | 550 if (error_expected) |
551 ASSERT_THAT(error_code, IsError(ERR_UPLOAD_FILE_CHANGED)); | 551 ASSERT_THAT(error_code, IsError(ERR_UPLOAD_FILE_CHANGED)); |
552 else | 552 else |
(...skipping 21 matching lines...) Expand all Loading... |
574 | 574 |
575 TEST_F(ElementsUploadDataStreamTest, MultipleInit) { | 575 TEST_F(ElementsUploadDataStreamTest, MultipleInit) { |
576 base::FilePath temp_file_path; | 576 base::FilePath temp_file_path; |
577 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 577 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
578 &temp_file_path)); | 578 &temp_file_path)); |
579 ASSERT_EQ(static_cast<int>(kTestDataSize), | 579 ASSERT_EQ(static_cast<int>(kTestDataSize), |
580 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 580 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
581 | 581 |
582 // Prepare data. | 582 // Prepare data. |
583 element_readers_.push_back( | 583 element_readers_.push_back( |
584 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 584 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
585 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 585 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
586 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 586 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
587 std::numeric_limits<uint64_t>::max(), base::Time()))); | 587 std::numeric_limits<uint64_t>::max(), base::Time())); |
588 std::unique_ptr<UploadDataStream> stream( | 588 std::unique_ptr<UploadDataStream> stream( |
589 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 589 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
590 | 590 |
591 std::string expected_data(kTestData, kTestData + kTestDataSize); | 591 std::string expected_data(kTestData, kTestData + kTestDataSize); |
592 expected_data += expected_data; | 592 expected_data += expected_data; |
593 | 593 |
594 // Call Init(). | 594 // Call Init(). |
595 TestCompletionCallback init_callback1; | 595 TestCompletionCallback init_callback1; |
596 ASSERT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), | 596 ASSERT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), |
597 IsError(ERR_IO_PENDING)); | 597 IsError(ERR_IO_PENDING)); |
(...skipping 21 matching lines...) Expand all Loading... |
619 TEST_F(ElementsUploadDataStreamTest, MultipleInitAsync) { | 619 TEST_F(ElementsUploadDataStreamTest, MultipleInitAsync) { |
620 base::FilePath temp_file_path; | 620 base::FilePath temp_file_path; |
621 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 621 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
622 &temp_file_path)); | 622 &temp_file_path)); |
623 ASSERT_EQ(static_cast<int>(kTestDataSize), | 623 ASSERT_EQ(static_cast<int>(kTestDataSize), |
624 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 624 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
625 TestCompletionCallback test_callback; | 625 TestCompletionCallback test_callback; |
626 | 626 |
627 // Prepare data. | 627 // Prepare data. |
628 element_readers_.push_back( | 628 element_readers_.push_back( |
629 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 629 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
630 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 630 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
631 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 631 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
632 std::numeric_limits<uint64_t>::max(), base::Time()))); | 632 std::numeric_limits<uint64_t>::max(), base::Time())); |
633 std::unique_ptr<UploadDataStream> stream( | 633 std::unique_ptr<UploadDataStream> stream( |
634 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 634 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
635 | 635 |
636 std::string expected_data(kTestData, kTestData + kTestDataSize); | 636 std::string expected_data(kTestData, kTestData + kTestDataSize); |
637 expected_data += expected_data; | 637 expected_data += expected_data; |
638 | 638 |
639 // Call Init(). | 639 // Call Init(). |
640 ASSERT_THAT(stream->Init(test_callback.callback(), BoundNetLog()), | 640 ASSERT_THAT(stream->Init(test_callback.callback(), BoundNetLog()), |
641 IsError(ERR_IO_PENDING)); | 641 IsError(ERR_IO_PENDING)); |
642 EXPECT_THAT(test_callback.WaitForResult(), IsOk()); | 642 EXPECT_THAT(test_callback.WaitForResult(), IsOk()); |
(...skipping 18 matching lines...) Expand all Loading... |
661 | 661 |
662 TEST_F(ElementsUploadDataStreamTest, InitToReset) { | 662 TEST_F(ElementsUploadDataStreamTest, InitToReset) { |
663 base::FilePath temp_file_path; | 663 base::FilePath temp_file_path; |
664 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 664 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
665 &temp_file_path)); | 665 &temp_file_path)); |
666 ASSERT_EQ(static_cast<int>(kTestDataSize), | 666 ASSERT_EQ(static_cast<int>(kTestDataSize), |
667 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 667 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
668 | 668 |
669 // Prepare data. | 669 // Prepare data. |
670 element_readers_.push_back( | 670 element_readers_.push_back( |
671 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 671 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
672 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 672 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
673 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 673 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
674 std::numeric_limits<uint64_t>::max(), base::Time()))); | 674 std::numeric_limits<uint64_t>::max(), base::Time())); |
675 std::unique_ptr<UploadDataStream> stream( | 675 std::unique_ptr<UploadDataStream> stream( |
676 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 676 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
677 | 677 |
678 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); | 678 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); |
679 expected_data.insert(expected_data.end(), kTestData, | 679 expected_data.insert(expected_data.end(), kTestData, |
680 kTestData + kTestDataSize); | 680 kTestData + kTestDataSize); |
681 | 681 |
682 // Call Init(). | 682 // Call Init(). |
683 TestCompletionCallback init_callback1; | 683 TestCompletionCallback init_callback1; |
684 ASSERT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), | 684 ASSERT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
719 | 719 |
720 TEST_F(ElementsUploadDataStreamTest, InitDuringAsyncInit) { | 720 TEST_F(ElementsUploadDataStreamTest, InitDuringAsyncInit) { |
721 base::FilePath temp_file_path; | 721 base::FilePath temp_file_path; |
722 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 722 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
723 &temp_file_path)); | 723 &temp_file_path)); |
724 ASSERT_EQ(static_cast<int>(kTestDataSize), | 724 ASSERT_EQ(static_cast<int>(kTestDataSize), |
725 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 725 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
726 | 726 |
727 // Prepare data. | 727 // Prepare data. |
728 element_readers_.push_back( | 728 element_readers_.push_back( |
729 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 729 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
730 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 730 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
731 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 731 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
732 std::numeric_limits<uint64_t>::max(), base::Time()))); | 732 std::numeric_limits<uint64_t>::max(), base::Time())); |
733 std::unique_ptr<UploadDataStream> stream( | 733 std::unique_ptr<UploadDataStream> stream( |
734 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 734 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
735 | 735 |
736 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); | 736 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); |
737 expected_data.insert(expected_data.end(), kTestData, | 737 expected_data.insert(expected_data.end(), kTestData, |
738 kTestData + kTestDataSize); | 738 kTestData + kTestDataSize); |
739 | 739 |
740 // Start Init. | 740 // Start Init. |
741 TestCompletionCallback init_callback1; | 741 TestCompletionCallback init_callback1; |
742 EXPECT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), | 742 EXPECT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), |
(...skipping 24 matching lines...) Expand all Loading... |
767 | 767 |
768 TEST_F(ElementsUploadDataStreamTest, InitDuringAsyncRead) { | 768 TEST_F(ElementsUploadDataStreamTest, InitDuringAsyncRead) { |
769 base::FilePath temp_file_path; | 769 base::FilePath temp_file_path; |
770 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), | 770 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
771 &temp_file_path)); | 771 &temp_file_path)); |
772 ASSERT_EQ(static_cast<int>(kTestDataSize), | 772 ASSERT_EQ(static_cast<int>(kTestDataSize), |
773 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); | 773 base::WriteFile(temp_file_path, kTestData, kTestDataSize)); |
774 | 774 |
775 // Prepare data. | 775 // Prepare data. |
776 element_readers_.push_back( | 776 element_readers_.push_back( |
777 base::WrapUnique(new UploadBytesElementReader(kTestData, kTestDataSize))); | 777 base::MakeUnique<UploadBytesElementReader>(kTestData, kTestDataSize)); |
778 element_readers_.push_back(base::WrapUnique(new UploadFileElementReader( | 778 element_readers_.push_back(base::MakeUnique<UploadFileElementReader>( |
779 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, | 779 base::ThreadTaskRunnerHandle::Get().get(), temp_file_path, 0, |
780 std::numeric_limits<uint64_t>::max(), base::Time()))); | 780 std::numeric_limits<uint64_t>::max(), base::Time())); |
781 std::unique_ptr<UploadDataStream> stream( | 781 std::unique_ptr<UploadDataStream> stream( |
782 new ElementsUploadDataStream(std::move(element_readers_), 0)); | 782 new ElementsUploadDataStream(std::move(element_readers_), 0)); |
783 | 783 |
784 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); | 784 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); |
785 expected_data.insert(expected_data.end(), kTestData, | 785 expected_data.insert(expected_data.end(), kTestData, |
786 kTestData + kTestDataSize); | 786 kTestData + kTestDataSize); |
787 | 787 |
788 // Call Init(). | 788 // Call Init(). |
789 TestCompletionCallback init_callback1; | 789 TestCompletionCallback init_callback1; |
790 ASSERT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), | 790 ASSERT_THAT(stream->Init(init_callback1.callback(), BoundNetLog()), |
(...skipping 28 matching lines...) Expand all Loading... |
819 wrapped_buffer2.get(), buf2.size(), read_callback2.callback())); | 819 wrapped_buffer2.get(), buf2.size(), read_callback2.callback())); |
820 EXPECT_EQ(static_cast<int>(buf2.size()), read_callback2.WaitForResult()); | 820 EXPECT_EQ(static_cast<int>(buf2.size()), read_callback2.WaitForResult()); |
821 EXPECT_EQ(expected_data, buf2); | 821 EXPECT_EQ(expected_data, buf2); |
822 EXPECT_TRUE(stream->IsEOF()); | 822 EXPECT_TRUE(stream->IsEOF()); |
823 | 823 |
824 // Make sure callbacks are not called for cancelled operations. | 824 // Make sure callbacks are not called for cancelled operations. |
825 EXPECT_FALSE(read_callback1.have_result()); | 825 EXPECT_FALSE(read_callback1.have_result()); |
826 } | 826 } |
827 | 827 |
828 } // namespace net | 828 } // namespace net |
OLD | NEW |