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

Side by Side Diff: net/url_request/url_request_job_tracker_unittest.cc

Issue 5607004: net: Remove typedef net::URLRequestJob URLRequestJob; (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased 2 Created 10 years 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
« no previous file with comments | « net/url_request/url_request_job_tracker.cc ('k') | net/url_request/url_request_redirect_job.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 <string.h> 5 #include <string.h>
6 #include <algorithm> 6 #include <algorithm>
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "googleurl/src/gurl.h" 10 #include "googleurl/src/gurl.h"
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 sizeof(kCompressed)); 44 sizeof(kCompressed));
45 } else { 45 } else {
46 return false; 46 return false;
47 } 47 }
48 48
49 return true; 49 return true;
50 } 50 }
51 51
52 class MockJobObserver : public URLRequestJobTracker::JobObserver { 52 class MockJobObserver : public URLRequestJobTracker::JobObserver {
53 public: 53 public:
54 MOCK_METHOD1(OnJobAdded, void(URLRequestJob* job)); 54 MOCK_METHOD1(OnJobAdded, void(net::URLRequestJob* job));
55 MOCK_METHOD1(OnJobRemoved, void(URLRequestJob* job)); 55 MOCK_METHOD1(OnJobRemoved, void(net::URLRequestJob* job));
56 MOCK_METHOD2(OnJobDone, void(URLRequestJob* job, 56 MOCK_METHOD2(OnJobDone, void(net::URLRequestJob* job,
57 const URLRequestStatus& status)); 57 const URLRequestStatus& status));
58 MOCK_METHOD3(OnJobRedirect, void(URLRequestJob* job, 58 MOCK_METHOD3(OnJobRedirect, void(net::URLRequestJob* job,
59 const GURL& location, 59 const GURL& location,
60 int status_code)); 60 int status_code));
61 MOCK_METHOD3(OnBytesRead, void(URLRequestJob* job, 61 MOCK_METHOD3(OnBytesRead, void(net::URLRequestJob* job,
62 const char* buf, 62 const char* buf,
63 int byte_count)); 63 int byte_count));
64 }; 64 };
65 65
66 // A URLRequestJob that returns static content for given URLs. We do 66 // A net::URLRequestJob that returns static content for given URLs. We do
67 // not use URLRequestTestJob here because URLRequestTestJob fakes 67 // not use URLRequestTestJob here because URLRequestTestJob fakes
68 // async operations by calling ReadRawData synchronously in an async 68 // async operations by calling ReadRawData synchronously in an async
69 // callback. This test requires a URLRequestJob that returns false for 69 // callback. This test requires a net::URLRequestJob that returns false for
70 // async reads, in order to exercise the real async read codepath. 70 // async reads, in order to exercise the real async read codepath.
71 class URLRequestJobTrackerTestJob : public URLRequestJob { 71 class URLRequestJobTrackerTestJob : public net::URLRequestJob {
72 public: 72 public:
73 URLRequestJobTrackerTestJob(net::URLRequest* request, bool async_reads) 73 URLRequestJobTrackerTestJob(net::URLRequest* request, bool async_reads)
74 : URLRequestJob(request), async_reads_(async_reads) {} 74 : net::URLRequestJob(request), async_reads_(async_reads) {}
75 75
76 void Start() { 76 void Start() {
77 ASSERT_TRUE(GetResponseBody(request_->url(), &response_data_)); 77 ASSERT_TRUE(GetResponseBody(request_->url(), &response_data_));
78 78
79 // Start reading asynchronously so that all error reporting and data 79 // Start reading asynchronously so that all error reporting and data
80 // callbacks happen as they would for network requests. 80 // callbacks happen as they would for network requests.
81 MessageLoop::current()->PostTask(FROM_HERE, NewRunnableMethod( 81 MessageLoop::current()->PostTask(FROM_HERE, NewRunnableMethod(
82 this, &URLRequestJobTrackerTestJob::NotifyHeadersComplete)); 82 this, &URLRequestJobTrackerTestJob::NotifyHeadersComplete));
83 } 83 }
84 84
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 } 118 }
119 119
120 bool GetContentEncodings( 120 bool GetContentEncodings(
121 std::vector<Filter::FilterType>* encoding_types) { 121 std::vector<Filter::FilterType>* encoding_types) {
122 if (request_->url().spec() == "test:basic") { 122 if (request_->url().spec() == "test:basic") {
123 return false; 123 return false;
124 } else if (request_->url().spec() == "test:compressed") { 124 } else if (request_->url().spec() == "test:compressed") {
125 encoding_types->push_back(Filter::FILTER_TYPE_GZIP); 125 encoding_types->push_back(Filter::FILTER_TYPE_GZIP);
126 return true; 126 return true;
127 } else { 127 } else {
128 return URLRequestJob::GetContentEncodings(encoding_types); 128 return net::URLRequestJob::GetContentEncodings(encoding_types);
129 } 129 }
130 } 130 }
131 131
132 // The data to send, will be set in Start(). 132 // The data to send, will be set in Start().
133 std::string response_data_; 133 std::string response_data_;
134 134
135 // Should reads be synchronous or asynchronous? 135 // Should reads be synchronous or asynchronous?
136 const bool async_reads_; 136 const bool async_reads_;
137 }; 137 };
138 138
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
194 EXPECT_EQ(1, d.response_started_count()); 194 EXPECT_EQ(1, d.response_started_count());
195 EXPECT_FALSE(d.received_data_before_response()); 195 EXPECT_FALSE(d.received_data_before_response());
196 EXPECT_STREQ(kBasic, d.data_received().c_str()); 196 EXPECT_STREQ(kBasic, d.data_received().c_str());
197 } 197 }
198 198
199 static net::URLRequest::ProtocolFactory Factory; 199 static net::URLRequest::ProtocolFactory Factory;
200 static bool g_async_reads; 200 static bool g_async_reads;
201 }; 201 };
202 202
203 // static 203 // static
204 URLRequestJob* URLRequestJobTrackerTest::Factory(net::URLRequest* request, 204 net::URLRequestJob* URLRequestJobTrackerTest::Factory(
205 const std::string& scheme) { 205 net::URLRequest* request,
206 const std::string& scheme) {
206 return new URLRequestJobTrackerTestJob(request, g_async_reads); 207 return new URLRequestJobTrackerTestJob(request, g_async_reads);
207 } 208 }
208 209
209 // static 210 // static
210 bool URLRequestJobTrackerTest::g_async_reads = true; 211 bool URLRequestJobTrackerTest::g_async_reads = true;
211 212
212 TEST_F(URLRequestJobTrackerTest, BasicAsync) { 213 TEST_F(URLRequestJobTrackerTest, BasicAsync) {
213 g_async_reads = true; 214 g_async_reads = true;
214 AssertJobTrackerCallbacks("test:basic"); 215 AssertJobTrackerCallbacks("test:basic");
215 } 216 }
216 217
217 TEST_F(URLRequestJobTrackerTest, BasicSync) { 218 TEST_F(URLRequestJobTrackerTest, BasicSync) {
218 g_async_reads = false; 219 g_async_reads = false;
219 AssertJobTrackerCallbacks("test:basic"); 220 AssertJobTrackerCallbacks("test:basic");
220 } 221 }
221 222
222 TEST_F(URLRequestJobTrackerTest, CompressedAsync) { 223 TEST_F(URLRequestJobTrackerTest, CompressedAsync) {
223 g_async_reads = true; 224 g_async_reads = true;
224 AssertJobTrackerCallbacks("test:compressed"); 225 AssertJobTrackerCallbacks("test:compressed");
225 } 226 }
226 227
227 TEST_F(URLRequestJobTrackerTest, CompressedSync) { 228 TEST_F(URLRequestJobTrackerTest, CompressedSync) {
228 g_async_reads = false; 229 g_async_reads = false;
229 AssertJobTrackerCallbacks("test:compressed"); 230 AssertJobTrackerCallbacks("test:compressed");
230 } 231 }
231 232
232 } // namespace 233 } // namespace
OLDNEW
« no previous file with comments | « net/url_request/url_request_job_tracker.cc ('k') | net/url_request/url_request_redirect_job.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698