| Index: content/browser/service_worker/service_worker_cache_writer_unittest.cc
|
| diff --git a/content/browser/service_worker/service_worker_cache_writer_unittest.cc b/content/browser/service_worker/service_worker_cache_writer_unittest.cc
|
| index 030411b3dcfb0596bc45406a69573a1b0772a17a..bc0eac40557dd3ee241a42c7e612133a01d7cc46 100644
|
| --- a/content/browser/service_worker/service_worker_cache_writer_unittest.cc
|
| +++ b/content/browser/service_worker/service_worker_cache_writer_unittest.cc
|
| @@ -314,16 +314,6 @@ class ServiceWorkerCacheWriterTest : public ::testing::Test {
|
| ServiceWorkerCacheWriterTest()
|
| : readers_deleter_(&readers_), writers_deleter_(&writers_) {}
|
|
|
| - void SetUp() override {
|
| - ::testing::Test::SetUp();
|
| - cache_writer_.reset(new ServiceWorkerCacheWriter(
|
| - base::Bind(&ServiceWorkerCacheWriterTest::CreateReader,
|
| - base::Unretained(this)),
|
| - base::Bind(&ServiceWorkerCacheWriterTest::CreateWriter,
|
| - base::Unretained(this))));
|
| - write_complete_ = false;
|
| - }
|
| -
|
| MockServiceWorkerResponseReader* ExpectReader() {
|
| scoped_ptr<MockServiceWorkerResponseReader> reader(
|
| new MockServiceWorkerResponseReader);
|
| @@ -340,6 +330,15 @@ class ServiceWorkerCacheWriterTest : public ::testing::Test {
|
| return borrowed_writer;
|
| }
|
|
|
| + // This should be called after ExpectReader() and ExpectWriter().
|
| + void Initialize() {
|
| + scoped_ptr<ServiceWorkerResponseReader> compare_reader(CreateReader());
|
| + scoped_ptr<ServiceWorkerResponseReader> copy_reader(CreateReader());
|
| + scoped_ptr<ServiceWorkerResponseWriter> writer(CreateWriter());
|
| + cache_writer_.reset(new ServiceWorkerCacheWriter(
|
| + std::move(compare_reader), std::move(copy_reader), std::move(writer)));
|
| + }
|
| +
|
| protected:
|
| // TODO(ellyjones): when unique_ptr<> is allowed, make these instead:
|
| // std::list<unique_ptr<...>>
|
| @@ -353,7 +352,7 @@ class ServiceWorkerCacheWriterTest : public ::testing::Test {
|
| STLElementDeleter<std::list<MockServiceWorkerResponseWriter*>>
|
| writers_deleter_;
|
| scoped_ptr<ServiceWorkerCacheWriter> cache_writer_;
|
| - bool write_complete_;
|
| + bool write_complete_ = false;
|
| net::Error last_error_;
|
|
|
| scoped_ptr<ServiceWorkerResponseReader> CreateReader() {
|
| @@ -404,6 +403,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughHeadersSync) {
|
| const size_t kHeaderSize = 16;
|
| MockServiceWorkerResponseWriter* writer = ExpectWriter();
|
| writer->ExpectWriteInfoOk(kHeaderSize, false);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(kHeaderSize);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -416,6 +416,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughHeadersAsync) {
|
| size_t kHeaderSize = 16;
|
| MockServiceWorkerResponseWriter* writer = ExpectWriter();
|
| writer->ExpectWriteInfoOk(kHeaderSize, true);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(kHeaderSize);
|
| EXPECT_EQ(net::ERR_IO_PENDING, error);
|
| @@ -436,6 +437,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughDataSync) {
|
| writer->ExpectWriteInfoOk(response_size, false);
|
| writer->ExpectWriteDataOk(data1.size(), false);
|
| writer->ExpectWriteDataOk(data2.size(), false);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -457,6 +459,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughDataAsync) {
|
| writer->ExpectWriteInfoOk(response_size, false);
|
| writer->ExpectWriteDataOk(data1.size(), true);
|
| writer->ExpectWriteDataOk(data2.size(), true);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -479,6 +482,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughHeadersFailSync) {
|
| const size_t kHeaderSize = 16;
|
| MockServiceWorkerResponseWriter* writer = ExpectWriter();
|
| writer->ExpectWriteInfo(kHeaderSize, false, net::ERR_FAILED);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(kHeaderSize);
|
| EXPECT_EQ(net::ERR_FAILED, error);
|
| @@ -491,6 +495,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughHeadersFailAsync) {
|
| size_t kHeaderSize = 16;
|
| MockServiceWorkerResponseWriter* writer = ExpectWriter();
|
| writer->ExpectWriteInfo(kHeaderSize, true, net::ERR_FAILED);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(kHeaderSize);
|
| EXPECT_EQ(net::ERR_IO_PENDING, error);
|
| @@ -508,6 +513,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughDataFailSync) {
|
| MockServiceWorkerResponseWriter* writer = ExpectWriter();
|
| writer->ExpectWriteInfoOk(data.size(), false);
|
| writer->ExpectWriteData(data.size(), false, net::ERR_FAILED);
|
| + Initialize();
|
|
|
| EXPECT_EQ(net::OK, WriteHeaders(data.size()));
|
| EXPECT_EQ(net::ERR_FAILED, WriteData(data));
|
| @@ -520,6 +526,7 @@ TEST_F(ServiceWorkerCacheWriterTest, PassthroughDataFailAsync) {
|
| MockServiceWorkerResponseWriter* writer = ExpectWriter();
|
| writer->ExpectWriteInfoOk(data.size(), false);
|
| writer->ExpectWriteData(data.size(), true, net::ERR_FAILED);
|
| + Initialize();
|
|
|
| EXPECT_EQ(net::OK, WriteHeaders(data.size()));
|
|
|
| @@ -541,6 +548,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareHeadersSync) {
|
| MockServiceWorkerResponseReader* reader = ExpectReader();
|
|
|
| reader->ExpectReadInfoOk(response_size, false);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -557,6 +565,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareDataOkSync) {
|
|
|
| reader->ExpectReadInfoOk(response_size, false);
|
| reader->ExpectReadDataOk(data1, false);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -575,6 +584,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareHeadersFailSync) {
|
| MockServiceWorkerResponseReader* reader = ExpectReader();
|
|
|
| reader->ExpectReadInfo(response_size, false, net::ERR_FAILED);
|
| + Initialize();
|
|
|
| EXPECT_EQ(net::ERR_FAILED, WriteHeaders(response_size));
|
| EXPECT_TRUE(writer->AllExpectedWritesDone());
|
| @@ -590,6 +600,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareDataFailSync) {
|
|
|
| reader->ExpectReadInfoOk(response_size, false);
|
| reader->ExpectReadData(data1.c_str(), data1.length(), false, net::ERR_FAILED);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -617,6 +628,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareShortCacheReads) {
|
| reader->ExpectReadDataOk(cache_data3, false);
|
| reader->ExpectReadDataOk(cache_data4, false);
|
| reader->ExpectReadDataOk(data5, false);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(kHeaderSize);
|
| EXPECT_EQ(net::OK, error);
|
| @@ -638,6 +650,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareDataOkAsync) {
|
|
|
| reader->ExpectReadInfoOk(response_size, true);
|
| reader->ExpectReadDataOk(data1, true);
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::ERR_IO_PENDING, error);
|
| @@ -665,6 +678,7 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareDataManyOkAsync) {
|
| for (size_t i = 0; i < arraysize(expected_data); ++i) {
|
| reader->ExpectReadDataOk(expected_data[i], true);
|
| }
|
| + Initialize();
|
|
|
| net::Error error = WriteHeaders(response_size);
|
| EXPECT_EQ(net::ERR_IO_PENDING, error);
|
| @@ -709,6 +723,8 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareFailedCopySync) {
|
| writer->ExpectWriteDataOk(net_data2.size(), false);
|
| writer->ExpectWriteDataOk(data3.size(), false);
|
|
|
| + Initialize();
|
| +
|
| net::Error error = WriteHeaders(net_response_size);
|
| EXPECT_EQ(net::OK, error);
|
| error = WriteData(data1);
|
| @@ -749,6 +765,8 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareFailedCopyShort) {
|
| writer->ExpectWriteDataOk(net_data2.size(), false);
|
| writer->ExpectWriteDataOk(data3.size(), false);
|
|
|
| + Initialize();
|
| +
|
| net::Error error = WriteHeaders(net_response_size);
|
| EXPECT_EQ(net::OK, error);
|
| error = WriteData(data1);
|
| @@ -791,6 +809,8 @@ TEST_F(ServiceWorkerCacheWriterTest, CompareFailedCopyLong) {
|
| writer->ExpectWriteDataOk(data1.size(), false);
|
| writer->ExpectWriteDataOk(net_data2.size(), false);
|
|
|
| + Initialize();
|
| +
|
| net::Error error = WriteHeaders(net_size);
|
| EXPECT_EQ(net::OK, error);
|
| error = WriteData(data1);
|
|
|