| 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 "android_webview/browser/net/android_stream_reader_url_request_job.h" | 5 #include "android_webview/browser/net/android_stream_reader_url_request_job.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "android_webview/browser/input_stream.h" | 10 #include "android_webview/browser/input_stream.h" |
| (...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 247 .WillOnce(Return(0)); | 247 .WillOnce(Return(0)); |
| 248 EXPECT_CALL(*stream_reader, ReadRawData(NotNull(), Gt(0))) | 248 EXPECT_CALL(*stream_reader, ReadRawData(NotNull(), Gt(0))) |
| 249 .WillOnce(Return(0)); | 249 .WillOnce(Return(0)); |
| 250 } | 250 } |
| 251 | 251 |
| 252 SetUpTestJob(std::move(stream_reader)); | 252 SetUpTestJob(std::move(stream_reader)); |
| 253 | 253 |
| 254 req_->Start(); | 254 req_->Start(); |
| 255 | 255 |
| 256 // The TestDelegate will quit the message loop on request completion. | 256 // The TestDelegate will quit the message loop on request completion. |
| 257 base::MessageLoop::current()->Run(); | 257 base::RunLoop().Run(); |
| 258 | 258 |
| 259 EXPECT_FALSE(url_request_delegate_.request_failed()); | 259 EXPECT_FALSE(url_request_delegate_.request_failed()); |
| 260 EXPECT_EQ(1, network_delegate_.completed_requests()); | 260 EXPECT_EQ(1, network_delegate_.completed_requests()); |
| 261 EXPECT_EQ(0, network_delegate_.error_count()); | 261 EXPECT_EQ(0, network_delegate_.error_count()); |
| 262 EXPECT_EQ(200, req_->GetResponseCode()); | 262 EXPECT_EQ(200, req_->GetResponseCode()); |
| 263 } | 263 } |
| 264 | 264 |
| 265 TEST_F(AndroidStreamReaderURLRequestJobTest, ReadWithNullStream) { | 265 TEST_F(AndroidStreamReaderURLRequestJobTest, ReadWithNullStream) { |
| 266 SetUpTestJob(nullptr, base::MakeUnique<NullStreamReaderDelegate>()); | 266 SetUpTestJob(nullptr, base::MakeUnique<NullStreamReaderDelegate>()); |
| 267 req_->Start(); | 267 req_->Start(); |
| 268 | 268 |
| 269 // The TestDelegate will quit the message loop on request completion. | 269 // The TestDelegate will quit the message loop on request completion. |
| 270 base::MessageLoop::current()->Run(); | 270 base::RunLoop().Run(); |
| 271 | 271 |
| 272 // The request_failed() method is named confusingly but all it checks is | 272 // The request_failed() method is named confusingly but all it checks is |
| 273 // whether the request got as far as calling NotifyHeadersComplete. | 273 // whether the request got as far as calling NotifyHeadersComplete. |
| 274 EXPECT_FALSE(url_request_delegate_.request_failed()); | 274 EXPECT_FALSE(url_request_delegate_.request_failed()); |
| 275 EXPECT_EQ(1, network_delegate_.completed_requests()); | 275 EXPECT_EQ(1, network_delegate_.completed_requests()); |
| 276 // A null input stream shouldn't result in an error. See crbug.com/180950. | 276 // A null input stream shouldn't result in an error. See crbug.com/180950. |
| 277 EXPECT_EQ(0, network_delegate_.error_count()); | 277 EXPECT_EQ(0, network_delegate_.error_count()); |
| 278 EXPECT_EQ(404, req_->GetResponseCode()); | 278 EXPECT_EQ(404, req_->GetResponseCode()); |
| 279 } | 279 } |
| 280 | 280 |
| 281 TEST_F(AndroidStreamReaderURLRequestJobTest, ModifyHeadersAndStatus) { | 281 TEST_F(AndroidStreamReaderURLRequestJobTest, ModifyHeadersAndStatus) { |
| 282 SetUpTestJob(nullptr, base::MakeUnique<HeaderAlteringStreamReaderDelegate>()); | 282 SetUpTestJob(nullptr, base::MakeUnique<HeaderAlteringStreamReaderDelegate>()); |
| 283 req_->Start(); | 283 req_->Start(); |
| 284 | 284 |
| 285 // The TestDelegate will quit the message loop on request completion. | 285 // The TestDelegate will quit the message loop on request completion. |
| 286 base::MessageLoop::current()->Run(); | 286 base::RunLoop().Run(); |
| 287 | 287 |
| 288 // The request_failed() method is named confusingly but all it checks is | 288 // The request_failed() method is named confusingly but all it checks is |
| 289 // whether the request got as far as calling NotifyHeadersComplete. | 289 // whether the request got as far as calling NotifyHeadersComplete. |
| 290 EXPECT_FALSE(url_request_delegate_.request_failed()); | 290 EXPECT_FALSE(url_request_delegate_.request_failed()); |
| 291 EXPECT_EQ(1, network_delegate_.completed_requests()); | 291 EXPECT_EQ(1, network_delegate_.completed_requests()); |
| 292 // A null input stream shouldn't result in an error. See crbug.com/180950. | 292 // A null input stream shouldn't result in an error. See crbug.com/180950. |
| 293 EXPECT_EQ(0, network_delegate_.error_count()); | 293 EXPECT_EQ(0, network_delegate_.error_count()); |
| 294 EXPECT_EQ(HeaderAlteringStreamReaderDelegate::kResponseCode, | 294 EXPECT_EQ(HeaderAlteringStreamReaderDelegate::kResponseCode, |
| 295 req_->GetResponseCode()); | 295 req_->GetResponseCode()); |
| 296 EXPECT_EQ(HeaderAlteringStreamReaderDelegate::kStatusLine, | 296 EXPECT_EQ(HeaderAlteringStreamReaderDelegate::kStatusLine, |
| (...skipping 24 matching lines...) Expand all Loading... |
| 321 .WillOnce(Return(bytes_to_read/2)); | 321 .WillOnce(Return(bytes_to_read/2)); |
| 322 EXPECT_CALL(*stream_reader, ReadRawData(NotNull(), Ge(bytes_to_read))) | 322 EXPECT_CALL(*stream_reader, ReadRawData(NotNull(), Ge(bytes_to_read))) |
| 323 .WillOnce(Return(0)); | 323 .WillOnce(Return(0)); |
| 324 } | 324 } |
| 325 | 325 |
| 326 SetUpTestJob(std::move(stream_reader)); | 326 SetUpTestJob(std::move(stream_reader)); |
| 327 | 327 |
| 328 SetRange(req_.get(), offset, bytes_available); | 328 SetRange(req_.get(), offset, bytes_available); |
| 329 req_->Start(); | 329 req_->Start(); |
| 330 | 330 |
| 331 base::MessageLoop::current()->Run(); | 331 base::RunLoop().Run(); |
| 332 | 332 |
| 333 EXPECT_FALSE(url_request_delegate_.request_failed()); | 333 EXPECT_FALSE(url_request_delegate_.request_failed()); |
| 334 EXPECT_EQ(bytes_to_read, url_request_delegate_.bytes_received()); | 334 EXPECT_EQ(bytes_to_read, url_request_delegate_.bytes_received()); |
| 335 EXPECT_EQ(1, network_delegate_.completed_requests()); | 335 EXPECT_EQ(1, network_delegate_.completed_requests()); |
| 336 EXPECT_EQ(0, network_delegate_.error_count()); | 336 EXPECT_EQ(0, network_delegate_.error_count()); |
| 337 } | 337 } |
| 338 | 338 |
| 339 TEST_F(AndroidStreamReaderURLRequestJobTest, | 339 TEST_F(AndroidStreamReaderURLRequestJobTest, |
| 340 ReadStreamWithMoreAvailableThanActual) { | 340 ReadStreamWithMoreAvailableThanActual) { |
| 341 const int bytes_available_reported = 190; | 341 const int bytes_available_reported = 190; |
| (...skipping 10 matching lines...) Expand all Loading... |
| 352 .WillOnce(Return(bytes_available)); | 352 .WillOnce(Return(bytes_available)); |
| 353 EXPECT_CALL(*stream_reader, ReadRawData(NotNull(), Ge(bytes_to_read))) | 353 EXPECT_CALL(*stream_reader, ReadRawData(NotNull(), Ge(bytes_to_read))) |
| 354 .WillOnce(Return(0)); | 354 .WillOnce(Return(0)); |
| 355 } | 355 } |
| 356 | 356 |
| 357 SetUpTestJob(std::move(stream_reader)); | 357 SetUpTestJob(std::move(stream_reader)); |
| 358 | 358 |
| 359 SetRange(req_.get(), offset, bytes_available_reported); | 359 SetRange(req_.get(), offset, bytes_available_reported); |
| 360 req_->Start(); | 360 req_->Start(); |
| 361 | 361 |
| 362 base::MessageLoop::current()->Run(); | 362 base::RunLoop().Run(); |
| 363 | 363 |
| 364 EXPECT_FALSE(url_request_delegate_.request_failed()); | 364 EXPECT_FALSE(url_request_delegate_.request_failed()); |
| 365 EXPECT_EQ(bytes_to_read, url_request_delegate_.bytes_received()); | 365 EXPECT_EQ(bytes_to_read, url_request_delegate_.bytes_received()); |
| 366 EXPECT_EQ(1, network_delegate_.completed_requests()); | 366 EXPECT_EQ(1, network_delegate_.completed_requests()); |
| 367 EXPECT_EQ(0, network_delegate_.error_count()); | 367 EXPECT_EQ(0, network_delegate_.error_count()); |
| 368 } | 368 } |
| 369 | 369 |
| 370 TEST_F(AndroidStreamReaderURLRequestJobTest, DeleteJobMidWaySeek) { | 370 TEST_F(AndroidStreamReaderURLRequestJobTest, DeleteJobMidWaySeek) { |
| 371 const int offset = 20; | 371 const int offset = 20; |
| 372 const int bytes_available = 128; | 372 const int bytes_available = 128; |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 410 req_->Start(); | 410 req_->Start(); |
| 411 | 411 |
| 412 loop.Run(); | 412 loop.Run(); |
| 413 | 413 |
| 414 EXPECT_EQ(0, network_delegate_.completed_requests()); | 414 EXPECT_EQ(0, network_delegate_.completed_requests()); |
| 415 req_->Cancel(); | 415 req_->Cancel(); |
| 416 EXPECT_EQ(1, network_delegate_.completed_requests()); | 416 EXPECT_EQ(1, network_delegate_.completed_requests()); |
| 417 } | 417 } |
| 418 | 418 |
| 419 } // namespace android_webview | 419 } // namespace android_webview |
| OLD | NEW |