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

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

Issue 6166010: net: Remove typedef net::URLRequestStatus URLRequestStatus; (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 11 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
« no previous file with comments | « net/spdy/spdy_network_transaction_unittest.cc ('k') | net/url_request/url_request_status.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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
47 } 47 }
48 48
49 return true; 49 return true;
50 } 50 }
51 51
52 class MockJobObserver : public net::URLRequestJobTracker::JobObserver { 52 class MockJobObserver : public net::URLRequestJobTracker::JobObserver {
53 public: 53 public:
54 MOCK_METHOD1(OnJobAdded, void(net::URLRequestJob* job)); 54 MOCK_METHOD1(OnJobAdded, void(net::URLRequestJob* job));
55 MOCK_METHOD1(OnJobRemoved, void(net::URLRequestJob* job)); 55 MOCK_METHOD1(OnJobRemoved, void(net::URLRequestJob* job));
56 MOCK_METHOD2(OnJobDone, void(net::URLRequestJob* job, 56 MOCK_METHOD2(OnJobDone, void(net::URLRequestJob* job,
57 const URLRequestStatus& status)); 57 const net::URLRequestStatus& status));
58 MOCK_METHOD3(OnJobRedirect, void(net::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(net::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 net::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 net::URLRequestTestJob here because net::URLRequestTestJob fakes 67 // not use net::URLRequestTestJob here because net::URLRequestTestJob fakes
(...skipping 19 matching lines...) Expand all
87 const size_t bytes_to_read = std::min( 87 const size_t bytes_to_read = std::min(
88 response_data_.size(), static_cast<size_t>(buf_size)); 88 response_data_.size(), static_cast<size_t>(buf_size));
89 89
90 // Regardless of whether we're performing a sync or async read, 90 // Regardless of whether we're performing a sync or async read,
91 // copy the data into the caller's buffer now. That way we don't 91 // copy the data into the caller's buffer now. That way we don't
92 // have to hold on to the buffers in the async case. 92 // have to hold on to the buffers in the async case.
93 memcpy(buf->data(), response_data_.data(), bytes_to_read); 93 memcpy(buf->data(), response_data_.data(), bytes_to_read);
94 response_data_.erase(0, bytes_to_read); 94 response_data_.erase(0, bytes_to_read);
95 95
96 if (async_reads_) { 96 if (async_reads_) {
97 SetStatus(URLRequestStatus(URLRequestStatus::IO_PENDING, 0)); 97 SetStatus(net::URLRequestStatus(net::URLRequestStatus::IO_PENDING, 0));
98 MessageLoop::current()->PostTask(FROM_HERE, NewRunnableMethod( 98 MessageLoop::current()->PostTask(FROM_HERE, NewRunnableMethod(
99 this, &URLRequestJobTrackerTestJob::OnReadCompleted, 99 this, &URLRequestJobTrackerTestJob::OnReadCompleted,
100 bytes_to_read)); 100 bytes_to_read));
101 } else { 101 } else {
102 SetStatus(URLRequestStatus()); 102 SetStatus(net::URLRequestStatus());
103 *bytes_read = bytes_to_read; 103 *bytes_read = bytes_to_read;
104 } 104 }
105 return !async_reads_; 105 return !async_reads_;
106 } 106 }
107 107
108 void OnReadCompleted(int status) { 108 void OnReadCompleted(int status) {
109 if (status == 0) { 109 if (status == 0) {
110 NotifyDone(URLRequestStatus()); 110 NotifyDone(net::URLRequestStatus());
111 } else if (status > 0) { 111 } else if (status > 0) {
112 SetStatus(URLRequestStatus()); 112 SetStatus(net::URLRequestStatus());
113 } else { 113 } else {
114 ASSERT_FALSE(true) << "Unexpected OnReadCompleted callback."; 114 ASSERT_FALSE(true) << "Unexpected OnReadCompleted callback.";
115 } 115 }
116 116
117 NotifyReadComplete(status); 117 NotifyReadComplete(status);
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 net::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
139 // Google Mock Matcher to check two URLRequestStatus instances for 139 // Google Mock Matcher to check two net::URLRequestStatus instances for
140 // equality. 140 // equality.
141 MATCHER_P(StatusEq, other, "") { 141 MATCHER_P(StatusEq, other, "") {
142 return (arg.status() == other.status() && 142 return (arg.status() == other.status() &&
143 arg.os_error() == other.os_error()); 143 arg.os_error() == other.os_error());
144 } 144 }
145 145
146 // Google Mock Matcher to check that two blocks of memory are equal. 146 // Google Mock Matcher to check that two blocks of memory are equal.
147 MATCHER_P2(MemEq, other, len, "") { 147 MATCHER_P2(MemEq, other, len, "") {
148 return memcmp(arg, other, len) == 0; 148 return memcmp(arg, other, len) == 0;
149 } 149 }
(...skipping 15 matching lines...) Expand all
165 const GURL gurl(url); 165 const GURL gurl(url);
166 std::string body; 166 std::string body;
167 ASSERT_TRUE(GetResponseBody(gurl, &body)); 167 ASSERT_TRUE(GetResponseBody(gurl, &body));
168 168
169 // We expect to receive one call for each method on the JobObserver, 169 // We expect to receive one call for each method on the JobObserver,
170 // in the following order: 170 // in the following order:
171 EXPECT_CALL(observer, OnJobAdded(NotNull())); 171 EXPECT_CALL(observer, OnJobAdded(NotNull()));
172 EXPECT_CALL(observer, OnBytesRead(NotNull(), 172 EXPECT_CALL(observer, OnBytesRead(NotNull(),
173 MemEq(body.data(), body.size()), 173 MemEq(body.data(), body.size()),
174 Eq(static_cast<int>(body.size())))); 174 Eq(static_cast<int>(body.size()))));
175 EXPECT_CALL(observer, OnJobDone(NotNull(), StatusEq(URLRequestStatus()))); 175 EXPECT_CALL(observer, OnJobDone(NotNull(),
176 StatusEq(net::URLRequestStatus())));
176 EXPECT_CALL(observer, OnJobRemoved(NotNull())); 177 EXPECT_CALL(observer, OnJobRemoved(NotNull()));
177 178
178 // Attach our observer and perform the resource fetch. 179 // Attach our observer and perform the resource fetch.
179 net::g_url_request_job_tracker.AddObserver(&observer); 180 net::g_url_request_job_tracker.AddObserver(&observer);
180 Fetch(gurl); 181 Fetch(gurl);
181 net::g_url_request_job_tracker.RemoveObserver(&observer); 182 net::g_url_request_job_tracker.RemoveObserver(&observer);
182 } 183 }
183 184
184 void Fetch(const GURL& url) { 185 void Fetch(const GURL& url) {
185 TestDelegate d; 186 TestDelegate d;
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
224 g_async_reads = true; 225 g_async_reads = true;
225 AssertJobTrackerCallbacks("test:compressed"); 226 AssertJobTrackerCallbacks("test:compressed");
226 } 227 }
227 228
228 TEST_F(URLRequestJobTrackerTest, CompressedSync) { 229 TEST_F(URLRequestJobTrackerTest, CompressedSync) {
229 g_async_reads = false; 230 g_async_reads = false;
230 AssertJobTrackerCallbacks("test:compressed"); 231 AssertJobTrackerCallbacks("test:compressed");
231 } 232 }
232 233
233 } // namespace 234 } // namespace
OLDNEW
« no previous file with comments | « net/spdy/spdy_network_transaction_unittest.cc ('k') | net/url_request/url_request_status.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698