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

Unified Diff: android_webview/browser/net/android_stream_reader_url_request_job_unittest.cc

Issue 12531002: [android_webview] Make intercepted URLRequests have status codes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 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 side-by-side diff with in-line comments
Download patch
Index: android_webview/browser/net/android_stream_reader_url_request_job_unittest.cc
diff --git a/android_webview/browser/net/android_stream_reader_url_request_job_unittest.cc b/android_webview/browser/net/android_stream_reader_url_request_job_unittest.cc
index f628700262492299ce538148b82caac5eebcf514..fce673ce108a44c22b3ec0047d1d416141614722 100644
--- a/android_webview/browser/net/android_stream_reader_url_request_job_unittest.cc
+++ b/android_webview/browser/net/android_stream_reader_url_request_job_unittest.cc
@@ -90,6 +90,17 @@ class StreamReaderDelegate :
}
};
+class NullStreamReaderDelegate : public StreamReaderDelegate {
+ public:
+ NullStreamReaderDelegate() {}
+
+ virtual scoped_ptr<InputStream> OpenInputStream(
+ JNIEnv* env,
+ net::URLRequest* request) {
+ return make_scoped_ptr<InputStream>(NULL);
+ }
+};
+
class MockInputStreamReader : public InputStreamReader {
public:
MockInputStreamReader() : InputStreamReader(new NotImplInputStream()) {}
@@ -155,8 +166,14 @@ class AndroidStreamReaderURLRequestJobTest : public Test {
}
void SetUpTestJob(scoped_ptr<InputStreamReader> stream_reader) {
- scoped_ptr<AndroidStreamReaderURLRequestJob::Delegate>
- stream_reader_delegate(new StreamReaderDelegate());
+ SetUpTestJob(stream_reader.Pass(),
+ make_scoped_ptr(new StreamReaderDelegate())
+ .PassAs<AndroidStreamReaderURLRequestJob::Delegate>());
+ }
+
+ void SetUpTestJob(scoped_ptr<InputStreamReader> stream_reader,
+ scoped_ptr<AndroidStreamReaderURLRequestJob::Delegate>
+ stream_reader_delegate) {
TestStreamReaderJob* test_stream_reader_job =
new TestStreamReaderJob(
req_.get(),
@@ -203,6 +220,21 @@ TEST_F(AndroidStreamReaderURLRequestJobTest, ReadEmptyStream) {
EXPECT_FALSE(url_request_delegate_.request_failed());
EXPECT_EQ(1, network_delegate_.completed_requests());
+ EXPECT_EQ(200, req_->GetResponseCode());
+}
+
+TEST_F(AndroidStreamReaderURLRequestJobTest, ReadWithNullStream) {
+ SetUpTestJob(scoped_ptr<InputStreamReader>(),
+ make_scoped_ptr(new NullStreamReaderDelegate())
+ .PassAs<AndroidStreamReaderURLRequestJob::Delegate>());
+ req_->Start();
+
+ // The TestDelegate will quit the message loop on request completion.
+ MessageLoop::current()->Run();
+
+ EXPECT_FALSE(url_request_delegate_.request_failed());
+ EXPECT_EQ(1, network_delegate_.completed_requests());
+ EXPECT_EQ(404, req_->GetResponseCode());
}
TEST_F(AndroidStreamReaderURLRequestJobTest, ReadPartOfStream) {

Powered by Google App Engine
This is Rietveld 408576698