Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(207)

Side by Side Diff: net/base/upload_data_stream_unittest.cc

Issue 15984016: Call scoped_refptr<T>::get() rather than relying on implicit "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/upload_data_stream.h" 5 #include "net/base/upload_data_stream.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 ASSERT_TRUE(stream.IsEOF()); 163 ASSERT_TRUE(stream.IsEOF());
164 } 164 }
165 165
166 TEST_F(UploadDataStreamTest, File) { 166 TEST_F(UploadDataStreamTest, File) {
167 base::FilePath temp_file_path; 167 base::FilePath temp_file_path;
168 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 168 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
169 &temp_file_path)); 169 &temp_file_path));
170 ASSERT_EQ(static_cast<int>(kTestDataSize), 170 ASSERT_EQ(static_cast<int>(kTestDataSize),
171 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 171 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
172 172
173 element_readers_.push_back(new UploadFileElementReader( 173 element_readers_.push_back(
174 base::MessageLoopProxy::current(), 174 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
175 temp_file_path, 0, kuint64max, base::Time())); 175 temp_file_path,
176 0,
177 kuint64max,
178 base::Time()));
176 179
177 TestCompletionCallback init_callback; 180 TestCompletionCallback init_callback;
178 UploadDataStream stream(&element_readers_, 0); 181 UploadDataStream stream(&element_readers_, 0);
179 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback())); 182 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback()));
180 ASSERT_EQ(OK, init_callback.WaitForResult()); 183 ASSERT_EQ(OK, init_callback.WaitForResult());
181 EXPECT_FALSE(stream.IsInMemory()); 184 EXPECT_FALSE(stream.IsInMemory());
182 EXPECT_EQ(kTestDataSize, stream.size()); 185 EXPECT_EQ(kTestDataSize, stream.size());
183 EXPECT_EQ(0U, stream.position()); 186 EXPECT_EQ(0U, stream.position());
184 EXPECT_FALSE(stream.IsEOF()); 187 EXPECT_FALSE(stream.IsEOF());
185 scoped_refptr<IOBuffer> buf = new IOBuffer(kTestBufferSize); 188 scoped_refptr<IOBuffer> buf = new IOBuffer(kTestBufferSize);
(...skipping 12 matching lines...) Expand all
198 base::FilePath temp_file_path; 201 base::FilePath temp_file_path;
199 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 202 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
200 &temp_file_path)); 203 &temp_file_path));
201 ASSERT_EQ(static_cast<int>(kTestDataSize), 204 ASSERT_EQ(static_cast<int>(kTestDataSize),
202 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 205 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
203 const uint64 kFakeSize = kTestDataSize*2; 206 const uint64 kFakeSize = kTestDataSize*2;
204 207
205 UploadFileElementReader::ScopedOverridingContentLengthForTests 208 UploadFileElementReader::ScopedOverridingContentLengthForTests
206 overriding_content_length(kFakeSize); 209 overriding_content_length(kFakeSize);
207 210
208 element_readers_.push_back(new UploadFileElementReader( 211 element_readers_.push_back(
209 base::MessageLoopProxy::current(), 212 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
210 temp_file_path, 0, kuint64max, base::Time())); 213 temp_file_path,
214 0,
215 kuint64max,
216 base::Time()));
211 217
212 TestCompletionCallback init_callback; 218 TestCompletionCallback init_callback;
213 UploadDataStream stream(&element_readers_, 0); 219 UploadDataStream stream(&element_readers_, 0);
214 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback())); 220 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback()));
215 ASSERT_EQ(OK, init_callback.WaitForResult()); 221 ASSERT_EQ(OK, init_callback.WaitForResult());
216 EXPECT_FALSE(stream.IsInMemory()); 222 EXPECT_FALSE(stream.IsInMemory());
217 EXPECT_EQ(kFakeSize, stream.size()); 223 EXPECT_EQ(kFakeSize, stream.size());
218 EXPECT_EQ(0U, stream.position()); 224 EXPECT_EQ(0U, stream.position());
219 EXPECT_FALSE(stream.IsEOF()); 225 EXPECT_FALSE(stream.IsEOF());
220 uint64 read_counter = 0; 226 uint64 read_counter = 0;
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 317
312 TEST_F(UploadDataStreamTest, FileAndBytes) { 318 TEST_F(UploadDataStreamTest, FileAndBytes) {
313 base::FilePath temp_file_path; 319 base::FilePath temp_file_path;
314 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 320 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
315 &temp_file_path)); 321 &temp_file_path));
316 ASSERT_EQ(static_cast<int>(kTestDataSize), 322 ASSERT_EQ(static_cast<int>(kTestDataSize),
317 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 323 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
318 324
319 const uint64 kFileRangeOffset = 1; 325 const uint64 kFileRangeOffset = 1;
320 const uint64 kFileRangeLength = 4; 326 const uint64 kFileRangeLength = 4;
321 element_readers_.push_back(new UploadFileElementReader( 327 element_readers_.push_back(
322 base::MessageLoopProxy::current(), 328 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
323 temp_file_path, kFileRangeOffset, kFileRangeLength, base::Time())); 329 temp_file_path,
330 kFileRangeOffset,
331 kFileRangeLength,
332 base::Time()));
324 333
325 element_readers_.push_back(new UploadBytesElementReader( 334 element_readers_.push_back(new UploadBytesElementReader(
326 kTestData, kTestDataSize)); 335 kTestData, kTestDataSize));
327 336
328 const uint64 kStreamSize = kTestDataSize + kFileRangeLength; 337 const uint64 kStreamSize = kTestDataSize + kFileRangeLength;
329 TestCompletionCallback init_callback; 338 TestCompletionCallback init_callback;
330 UploadDataStream stream(&element_readers_, 0); 339 UploadDataStream stream(&element_readers_, 0);
331 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback())); 340 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback()));
332 ASSERT_EQ(OK, init_callback.WaitForResult()); 341 ASSERT_EQ(OK, init_callback.WaitForResult());
333 EXPECT_FALSE(stream.IsInMemory()); 342 EXPECT_FALSE(stream.IsInMemory());
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
513 read_callback3.WaitForResult()); 522 read_callback3.WaitForResult());
514 } 523 }
515 524
516 void UploadDataStreamTest::FileChangedHelper(const base::FilePath& file_path, 525 void UploadDataStreamTest::FileChangedHelper(const base::FilePath& file_path,
517 const base::Time& time, 526 const base::Time& time,
518 bool error_expected) { 527 bool error_expected) {
519 // Don't use element_readers_ here, as this function is called twice, and 528 // Don't use element_readers_ here, as this function is called twice, and
520 // reusing element_readers_ is wrong. 529 // reusing element_readers_ is wrong.
521 ScopedVector<UploadElementReader> element_readers; 530 ScopedVector<UploadElementReader> element_readers;
522 element_readers.push_back(new UploadFileElementReader( 531 element_readers.push_back(new UploadFileElementReader(
523 base::MessageLoopProxy::current(), file_path, 1, 2, time)); 532 base::MessageLoopProxy::current().get(), file_path, 1, 2, time));
524 533
525 TestCompletionCallback init_callback; 534 TestCompletionCallback init_callback;
526 UploadDataStream stream(&element_readers, 0); 535 UploadDataStream stream(&element_readers, 0);
527 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback())); 536 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback.callback()));
528 int error_code = init_callback.WaitForResult(); 537 int error_code = init_callback.WaitForResult();
529 if (error_expected) 538 if (error_expected)
530 ASSERT_EQ(ERR_UPLOAD_FILE_CHANGED, error_code); 539 ASSERT_EQ(ERR_UPLOAD_FILE_CHANGED, error_code);
531 else 540 else
532 ASSERT_EQ(OK, error_code); 541 ASSERT_EQ(OK, error_code);
533 } 542 }
(...skipping 20 matching lines...) Expand all
554 TEST_F(UploadDataStreamTest, MultipleInit) { 563 TEST_F(UploadDataStreamTest, MultipleInit) {
555 base::FilePath temp_file_path; 564 base::FilePath temp_file_path;
556 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 565 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
557 &temp_file_path)); 566 &temp_file_path));
558 ASSERT_EQ(static_cast<int>(kTestDataSize), 567 ASSERT_EQ(static_cast<int>(kTestDataSize),
559 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 568 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
560 569
561 // Prepare data. 570 // Prepare data.
562 element_readers_.push_back(new UploadBytesElementReader( 571 element_readers_.push_back(new UploadBytesElementReader(
563 kTestData, kTestDataSize)); 572 kTestData, kTestDataSize));
564 element_readers_.push_back(new UploadFileElementReader( 573 element_readers_.push_back(
565 base::MessageLoopProxy::current(), 574 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
566 temp_file_path, 0, kuint64max, base::Time())); 575 temp_file_path,
576 0,
577 kuint64max,
578 base::Time()));
567 UploadDataStream stream(&element_readers_, 0); 579 UploadDataStream stream(&element_readers_, 0);
568 580
569 std::string expected_data(kTestData, kTestData + kTestDataSize); 581 std::string expected_data(kTestData, kTestData + kTestDataSize);
570 expected_data += expected_data; 582 expected_data += expected_data;
571 583
572 // Call Init(). 584 // Call Init().
573 TestCompletionCallback init_callback1; 585 TestCompletionCallback init_callback1;
574 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback())); 586 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback()));
575 ASSERT_EQ(OK, init_callback1.WaitForResult()); 587 ASSERT_EQ(OK, init_callback1.WaitForResult());
576 EXPECT_FALSE(stream.IsEOF()); 588 EXPECT_FALSE(stream.IsEOF());
(...skipping 19 matching lines...) Expand all
596 base::FilePath temp_file_path; 608 base::FilePath temp_file_path;
597 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 609 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
598 &temp_file_path)); 610 &temp_file_path));
599 ASSERT_EQ(static_cast<int>(kTestDataSize), 611 ASSERT_EQ(static_cast<int>(kTestDataSize),
600 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 612 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
601 TestCompletionCallback test_callback; 613 TestCompletionCallback test_callback;
602 614
603 // Prepare data. 615 // Prepare data.
604 element_readers_.push_back(new UploadBytesElementReader( 616 element_readers_.push_back(new UploadBytesElementReader(
605 kTestData, kTestDataSize)); 617 kTestData, kTestDataSize));
606 element_readers_.push_back(new UploadFileElementReader( 618 element_readers_.push_back(
607 base::MessageLoopProxy::current(), 619 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
608 temp_file_path, 0, kuint64max, base::Time())); 620 temp_file_path,
621 0,
622 kuint64max,
623 base::Time()));
609 UploadDataStream stream(&element_readers_, 0); 624 UploadDataStream stream(&element_readers_, 0);
610 625
611 std::string expected_data(kTestData, kTestData + kTestDataSize); 626 std::string expected_data(kTestData, kTestData + kTestDataSize);
612 expected_data += expected_data; 627 expected_data += expected_data;
613 628
614 // Call Init(). 629 // Call Init().
615 ASSERT_EQ(ERR_IO_PENDING, stream.Init(test_callback.callback())); 630 ASSERT_EQ(ERR_IO_PENDING, stream.Init(test_callback.callback()));
616 EXPECT_EQ(OK, test_callback.WaitForResult()); 631 EXPECT_EQ(OK, test_callback.WaitForResult());
617 EXPECT_FALSE(stream.IsEOF()); 632 EXPECT_FALSE(stream.IsEOF());
618 EXPECT_EQ(kTestDataSize*2, stream.size()); 633 EXPECT_EQ(kTestDataSize*2, stream.size());
(...skipping 16 matching lines...) Expand all
635 TEST_F(UploadDataStreamTest, InitToReset) { 650 TEST_F(UploadDataStreamTest, InitToReset) {
636 base::FilePath temp_file_path; 651 base::FilePath temp_file_path;
637 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 652 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
638 &temp_file_path)); 653 &temp_file_path));
639 ASSERT_EQ(static_cast<int>(kTestDataSize), 654 ASSERT_EQ(static_cast<int>(kTestDataSize),
640 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 655 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
641 656
642 // Prepare data. 657 // Prepare data.
643 element_readers_.push_back(new UploadBytesElementReader( 658 element_readers_.push_back(new UploadBytesElementReader(
644 kTestData, kTestDataSize)); 659 kTestData, kTestDataSize));
645 element_readers_.push_back(new UploadFileElementReader( 660 element_readers_.push_back(
646 base::MessageLoopProxy::current(), 661 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
647 temp_file_path, 0, kuint64max, base::Time())); 662 temp_file_path,
663 0,
664 kuint64max,
665 base::Time()));
648 UploadDataStream stream(&element_readers_, 0); 666 UploadDataStream stream(&element_readers_, 0);
649 667
650 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); 668 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize);
651 expected_data.insert(expected_data.end(), expected_data.begin(), 669 expected_data.insert(expected_data.end(), expected_data.begin(),
652 expected_data.begin() + kTestDataSize); 670 expected_data.begin() + kTestDataSize);
653 671
654 // Call Init(). 672 // Call Init().
655 TestCompletionCallback init_callback1; 673 TestCompletionCallback init_callback1;
656 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback())); 674 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback()));
657 EXPECT_EQ(OK, init_callback1.WaitForResult()); 675 EXPECT_EQ(OK, init_callback1.WaitForResult());
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
689 TEST_F(UploadDataStreamTest, InitDuringAsyncInit) { 707 TEST_F(UploadDataStreamTest, InitDuringAsyncInit) {
690 base::FilePath temp_file_path; 708 base::FilePath temp_file_path;
691 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 709 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
692 &temp_file_path)); 710 &temp_file_path));
693 ASSERT_EQ(static_cast<int>(kTestDataSize), 711 ASSERT_EQ(static_cast<int>(kTestDataSize),
694 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 712 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
695 713
696 // Prepare data. 714 // Prepare data.
697 element_readers_.push_back(new UploadBytesElementReader( 715 element_readers_.push_back(new UploadBytesElementReader(
698 kTestData, kTestDataSize)); 716 kTestData, kTestDataSize));
699 element_readers_.push_back(new UploadFileElementReader( 717 element_readers_.push_back(
700 base::MessageLoopProxy::current(), 718 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
701 temp_file_path, 0, kuint64max, base::Time())); 719 temp_file_path,
720 0,
721 kuint64max,
722 base::Time()));
702 UploadDataStream stream(&element_readers_, 0); 723 UploadDataStream stream(&element_readers_, 0);
703 724
704 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); 725 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize);
705 expected_data.insert(expected_data.end(), expected_data.begin(), 726 expected_data.insert(expected_data.end(), expected_data.begin(),
706 expected_data.begin() + kTestDataSize); 727 expected_data.begin() + kTestDataSize);
707 728
708 // Start Init. 729 // Start Init.
709 TestCompletionCallback init_callback1; 730 TestCompletionCallback init_callback1;
710 EXPECT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback())); 731 EXPECT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback()));
711 732
(...skipping 22 matching lines...) Expand all
734 TEST_F(UploadDataStreamTest, InitDuringAsyncRead) { 755 TEST_F(UploadDataStreamTest, InitDuringAsyncRead) {
735 base::FilePath temp_file_path; 756 base::FilePath temp_file_path;
736 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(), 757 ASSERT_TRUE(file_util::CreateTemporaryFileInDir(temp_dir_.path(),
737 &temp_file_path)); 758 &temp_file_path));
738 ASSERT_EQ(static_cast<int>(kTestDataSize), 759 ASSERT_EQ(static_cast<int>(kTestDataSize),
739 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize)); 760 file_util::WriteFile(temp_file_path, kTestData, kTestDataSize));
740 761
741 // Prepare data. 762 // Prepare data.
742 element_readers_.push_back(new UploadBytesElementReader( 763 element_readers_.push_back(new UploadBytesElementReader(
743 kTestData, kTestDataSize)); 764 kTestData, kTestDataSize));
744 element_readers_.push_back(new UploadFileElementReader( 765 element_readers_.push_back(
745 base::MessageLoopProxy::current(), 766 new UploadFileElementReader(base::MessageLoopProxy::current().get(),
746 temp_file_path, 0, kuint64max, base::Time())); 767 temp_file_path,
768 0,
769 kuint64max,
770 base::Time()));
747 UploadDataStream stream(&element_readers_, 0); 771 UploadDataStream stream(&element_readers_, 0);
748 772
749 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize); 773 std::vector<char> expected_data(kTestData, kTestData + kTestDataSize);
750 expected_data.insert(expected_data.end(), expected_data.begin(), 774 expected_data.insert(expected_data.end(), expected_data.begin(),
751 expected_data.begin() + kTestDataSize); 775 expected_data.begin() + kTestDataSize);
752 776
753 // Call Init(). 777 // Call Init().
754 TestCompletionCallback init_callback1; 778 TestCompletionCallback init_callback1;
755 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback())); 779 ASSERT_EQ(ERR_IO_PENDING, stream.Init(init_callback1.callback()));
756 EXPECT_EQ(OK, init_callback1.WaitForResult()); 780 EXPECT_EQ(OK, init_callback1.WaitForResult());
(...skipping 24 matching lines...) Expand all
781 wrapped_buffer2.get(), buf2.size(), read_callback2.callback())); 805 wrapped_buffer2.get(), buf2.size(), read_callback2.callback()));
782 EXPECT_EQ(static_cast<int>(buf2.size()), read_callback2.WaitForResult()); 806 EXPECT_EQ(static_cast<int>(buf2.size()), read_callback2.WaitForResult());
783 EXPECT_EQ(expected_data, buf2); 807 EXPECT_EQ(expected_data, buf2);
784 EXPECT_TRUE(stream.IsEOF()); 808 EXPECT_TRUE(stream.IsEOF());
785 809
786 // Make sure callbacks are not called for cancelled operations. 810 // Make sure callbacks are not called for cancelled operations.
787 EXPECT_FALSE(read_callback1.have_result()); 811 EXPECT_FALSE(read_callback1.have_result());
788 } 812 }
789 813
790 } // namespace net 814 } // namespace net
OLDNEW
« no previous file with comments | « media/tools/shader_bench/shader_bench.cc ('k') | net/base/upload_file_element_reader_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698