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 "build/build_config.h" | 5 #include "build/build_config.h" |
6 | 6 |
7 #if defined(OS_WIN) | 7 #if defined(OS_WIN) |
8 #include <windows.h> | 8 #include <windows.h> |
9 #include <shlobj.h> | 9 #include <shlobj.h> |
10 #endif | 10 #endif |
(...skipping 3809 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
3820 &delegate_info)); | 3820 &delegate_info)); |
3821 EXPECT_EQ(kSecondDelegateInfo, delegate_info); | 3821 EXPECT_EQ(kSecondDelegateInfo, delegate_info); |
3822 | 3822 |
3823 ++log_position; | 3823 ++log_position; |
3824 EXPECT_EQ(NetLog::TYPE_DELEGATE_INFO, entries[log_position].type); | 3824 EXPECT_EQ(NetLog::TYPE_DELEGATE_INFO, entries[log_position].type); |
3825 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 3825 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); |
3826 | 3826 |
3827 return log_position + 1; | 3827 return log_position + 1; |
3828 } | 3828 } |
3829 | 3829 |
3830 static size_t ExpectBeforeNetworkStartBeginAndEnd( | |
mmenke
2014/01/07 19:44:05
I find this name hard to parse.
Maybe just Expect
mmenke
2014/01/07 19:44:05
Also, should have some sort of comment.
jkarlin
2014/01/07 20:10:03
Done.
jkarlin
2014/01/07 20:10:03
Done.
| |
3831 const CapturingNetLog::CapturedEntryList& entries, | |
3832 size_t log_position) { | |
3833 log_position = | |
3834 ExpectLogContainsSomewhereAfter(entries, | |
3835 log_position, | |
3836 NetLog::TYPE_URL_REQUEST_DELEGATE, | |
3837 NetLog::PHASE_BEGIN); | |
3838 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, | |
3839 entries[log_position + 1].type); | |
3840 EXPECT_EQ(NetLog::PHASE_END, entries[log_position + 1].phase); | |
3841 return log_position + 1; | |
3842 } | |
3843 | |
3830 private: | 3844 private: |
3831 friend class base::RefCounted<AsyncDelegateLogger>; | 3845 friend class base::RefCounted<AsyncDelegateLogger>; |
3832 | 3846 |
3833 AsyncDelegateLogger(URLRequest* url_request, | 3847 AsyncDelegateLogger(URLRequest* url_request, |
3834 LoadState expected_first_load_state, | 3848 LoadState expected_first_load_state, |
3835 LoadState expected_second_load_state, | 3849 LoadState expected_second_load_state, |
3836 LoadState expected_third_load_state, | 3850 LoadState expected_third_load_state, |
3837 const Callback& callback) | 3851 const Callback& callback) |
3838 : url_request_(url_request), | 3852 : url_request_(url_request), |
3839 expected_first_load_state_(expected_first_load_state), | 3853 expected_first_load_state_(expected_first_load_state), |
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4134 log_position + 1, | 4148 log_position + 1, |
4135 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4149 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4136 NetLog::PHASE_BEGIN); | 4150 NetLog::PHASE_BEGIN); |
4137 | 4151 |
4138 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 4152 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
4139 log_position + 1); | 4153 log_position + 1); |
4140 | 4154 |
4141 ASSERT_LT(log_position, entries.size()); | 4155 ASSERT_LT(log_position, entries.size()); |
4142 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 4156 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); |
4143 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 4157 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); |
4158 | |
4159 if (i == 1) { | |
4160 log_position = AsyncDelegateLogger::ExpectBeforeNetworkStartBeginAndEnd( | |
4161 entries, log_position + 1); | |
4162 } | |
4144 } | 4163 } |
4145 | 4164 |
4146 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 4165 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
4147 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 4166 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); |
4148 } | 4167 } |
4149 | 4168 |
4150 // Tests handling of delegate info from a network delegate in the case of an | 4169 // Tests handling of delegate info from a network delegate in the case of an |
4151 // HTTP redirect. | 4170 // HTTP redirect. |
4152 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoRedirect) { | 4171 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoRedirect) { |
4153 ASSERT_TRUE(test_server_.Start()); | 4172 ASSERT_TRUE(test_server_.Start()); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4189 log_position + 1, | 4208 log_position + 1, |
4190 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4209 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4191 NetLog::PHASE_BEGIN); | 4210 NetLog::PHASE_BEGIN); |
4192 | 4211 |
4193 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 4212 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
4194 log_position + 1); | 4213 log_position + 1); |
4195 | 4214 |
4196 ASSERT_LT(log_position, entries.size()); | 4215 ASSERT_LT(log_position, entries.size()); |
4197 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 4216 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); |
4198 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 4217 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); |
4218 | |
4219 if (i == 1) { | |
4220 log_position = AsyncDelegateLogger::ExpectBeforeNetworkStartBeginAndEnd( | |
4221 entries, log_position + 1); | |
4222 } | |
4199 } | 4223 } |
4200 | 4224 |
4201 // The URLRequest::Delegate then gets informed about the redirect. | 4225 // The URLRequest::Delegate then gets informed about the redirect. |
4202 log_position = ExpectLogContainsSomewhereAfter( | 4226 log_position = ExpectLogContainsSomewhereAfter( |
4203 entries, | 4227 entries, |
4204 log_position + 1, | 4228 log_position + 1, |
4205 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4229 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4206 NetLog::PHASE_BEGIN); | 4230 NetLog::PHASE_BEGIN); |
4207 | 4231 |
4208 // The NetworkDelegate logged information in the same three events as before. | 4232 // The NetworkDelegate logged information in the same three events as before. |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4268 log_position + 1, | 4292 log_position + 1, |
4269 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4293 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4270 NetLog::PHASE_BEGIN); | 4294 NetLog::PHASE_BEGIN); |
4271 | 4295 |
4272 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 4296 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
4273 log_position + 1); | 4297 log_position + 1); |
4274 | 4298 |
4275 ASSERT_LT(log_position, entries.size()); | 4299 ASSERT_LT(log_position, entries.size()); |
4276 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 4300 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); |
4277 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 4301 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); |
4302 | |
4303 if (i == 1) { | |
4304 log_position = AsyncDelegateLogger::ExpectBeforeNetworkStartBeginAndEnd( | |
4305 entries, log_position + 1); | |
4306 } | |
4278 } | 4307 } |
4279 | 4308 |
4280 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 4309 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
4281 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 4310 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); |
4282 } | 4311 } |
4283 | 4312 |
4284 // Tests handling of delegate info from a URLRequest::Delegate. | 4313 // Tests handling of delegate info from a URLRequest::Delegate. |
4285 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfo) { | 4314 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfo) { |
4286 ASSERT_TRUE(test_server_.Start()); | 4315 ASSERT_TRUE(test_server_.Start()); |
4287 | 4316 |
4288 AsyncLoggingUrlRequestDelegate request_delegate( | 4317 AsyncLoggingUrlRequestDelegate request_delegate( |
4289 AsyncLoggingUrlRequestDelegate::NO_CANCEL); | 4318 AsyncLoggingUrlRequestDelegate::NO_CANCEL); |
4290 TestURLRequestContext context(true); | 4319 TestURLRequestContext context(true); |
4291 context.set_network_delegate(NULL); | 4320 context.set_network_delegate(NULL); |
4292 context.set_net_log(&net_log_); | 4321 context.set_net_log(&net_log_); |
4293 context.Init(); | 4322 context.Init(); |
4294 | 4323 |
4295 { | 4324 { |
4296 // A chunked response with delays between chunks is used to make sure that | 4325 // A chunked response with delays between chunks is used to make sure that |
4297 // attempts by the URLRequest delegate to log information while reading the | 4326 // attempts by the URLRequest delegate to log information while reading the |
4298 // body are ignored. Since they are ignored, this test is robust against | 4327 // body are ignored. Since they are ignored, this test is robust against |
4299 // the possability of multiple reads being combined in the unlikely event | 4328 // the possibility of multiple reads being combined in the unlikely event |
4300 // that it occurs. | 4329 // that it occurs. |
4301 URLRequest r(test_server_.GetURL("chunked?waitBetweenChunks=20"), | 4330 URLRequest r(test_server_.GetURL("chunked?waitBetweenChunks=20"), |
4302 DEFAULT_PRIORITY, | 4331 DEFAULT_PRIORITY, |
4303 &request_delegate, | 4332 &request_delegate, |
4304 &context); | 4333 &context); |
4305 LoadStateWithParam load_state = r.GetLoadState(); | 4334 LoadStateWithParam load_state = r.GetLoadState(); |
4306 r.Start(); | 4335 r.Start(); |
4307 base::RunLoop().Run(); | 4336 base::RunLoop().Run(); |
4308 | 4337 |
4309 EXPECT_EQ(200, r.GetResponseCode()); | 4338 EXPECT_EQ(200, r.GetResponseCode()); |
4310 EXPECT_EQ(URLRequestStatus::SUCCESS, r.status().status()); | 4339 EXPECT_EQ(URLRequestStatus::SUCCESS, r.status().status()); |
4311 } | 4340 } |
4312 | 4341 |
4313 CapturingNetLog::CapturedEntryList entries; | 4342 CapturingNetLog::CapturedEntryList entries; |
4314 net_log_.GetEntries(&entries); | 4343 net_log_.GetEntries(&entries); |
4315 | 4344 |
4345 size_t log_position = 0; | |
4346 | |
4347 log_position = AsyncDelegateLogger::ExpectBeforeNetworkStartBeginAndEnd( | |
4348 entries, log_position); | |
4349 | |
4316 // The delegate info should only have been logged on header complete. Other | 4350 // The delegate info should only have been logged on header complete. Other |
4317 // times it should silently be ignored. | 4351 // times it should silently be ignored. |
4318 | 4352 log_position = |
4319 size_t log_position = ExpectLogContainsSomewhereAfter( | 4353 ExpectLogContainsSomewhereAfter(entries, |
4320 entries, | 4354 log_position + 1, |
4321 0, | 4355 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4322 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4356 NetLog::PHASE_BEGIN); |
4323 NetLog::PHASE_BEGIN); | |
4324 | 4357 |
4325 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 4358 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
4326 log_position + 1); | 4359 log_position + 1); |
4327 | 4360 |
4328 ASSERT_LT(log_position, entries.size()); | 4361 ASSERT_LT(log_position, entries.size()); |
4329 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 4362 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); |
4330 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 4363 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); |
4331 | 4364 |
4332 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 4365 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
4333 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 4366 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); |
(...skipping 26 matching lines...) Expand all Loading... | |
4360 EXPECT_EQ(URLRequestStatus::SUCCESS, r.status().status()); | 4393 EXPECT_EQ(URLRequestStatus::SUCCESS, r.status().status()); |
4361 } | 4394 } |
4362 | 4395 |
4363 CapturingNetLog::CapturedEntryList entries; | 4396 CapturingNetLog::CapturedEntryList entries; |
4364 net_log_.GetEntries(&entries); | 4397 net_log_.GetEntries(&entries); |
4365 | 4398 |
4366 // Delegate info should only have been logged in OnReceivedRedirect and | 4399 // Delegate info should only have been logged in OnReceivedRedirect and |
4367 // OnResponseStarted. | 4400 // OnResponseStarted. |
4368 size_t log_position = 0; | 4401 size_t log_position = 0; |
4369 for (int i = 0; i < 2; ++i) { | 4402 for (int i = 0; i < 2; ++i) { |
4403 if (i == 0) { | |
4404 log_position = AsyncDelegateLogger::ExpectBeforeNetworkStartBeginAndEnd( | |
4405 entries, log_position) + 1; | |
4406 } | |
4407 | |
4370 log_position = ExpectLogContainsSomewhereAfter( | 4408 log_position = ExpectLogContainsSomewhereAfter( |
4371 entries, | 4409 entries, |
4372 log_position, | 4410 log_position, |
4373 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4411 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4374 NetLog::PHASE_BEGIN); | 4412 NetLog::PHASE_BEGIN); |
4375 | 4413 |
4376 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 4414 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
4377 log_position + 1); | 4415 log_position + 1); |
4378 | 4416 |
4379 ASSERT_LT(log_position, entries.size()); | 4417 ASSERT_LT(log_position, entries.size()); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4420 | 4458 |
4421 CapturingNetLog::CapturedEntryList entries; | 4459 CapturingNetLog::CapturedEntryList entries; |
4422 net_log.GetEntries(&entries); | 4460 net_log.GetEntries(&entries); |
4423 | 4461 |
4424 // Delegate info is always logged in both OnReceivedRedirect and | 4462 // Delegate info is always logged in both OnReceivedRedirect and |
4425 // OnResponseStarted. In the CANCEL_ON_RECEIVED_REDIRECT, the | 4463 // OnResponseStarted. In the CANCEL_ON_RECEIVED_REDIRECT, the |
4426 // OnResponseStarted delegate call is after cancellation, but logging is | 4464 // OnResponseStarted delegate call is after cancellation, but logging is |
4427 // still currently supported in that call. | 4465 // still currently supported in that call. |
4428 size_t log_position = 0; | 4466 size_t log_position = 0; |
4429 for (int i = 0; i < 2; ++i) { | 4467 for (int i = 0; i < 2; ++i) { |
4468 if (i == 0) { | |
4469 log_position = AsyncDelegateLogger::ExpectBeforeNetworkStartBeginAndEnd( | |
4470 entries, log_position) + 1; | |
4471 } | |
4472 | |
4430 log_position = ExpectLogContainsSomewhereAfter( | 4473 log_position = ExpectLogContainsSomewhereAfter( |
4431 entries, | 4474 entries, |
4432 log_position, | 4475 log_position, |
4433 NetLog::TYPE_URL_REQUEST_DELEGATE, | 4476 NetLog::TYPE_URL_REQUEST_DELEGATE, |
4434 NetLog::PHASE_BEGIN); | 4477 NetLog::PHASE_BEGIN); |
4435 | 4478 |
4436 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 4479 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
4437 log_position + 1); | 4480 log_position + 1); |
4438 | 4481 |
4439 ASSERT_LT(log_position, entries.size()); | 4482 ASSERT_LT(log_position, entries.size()); |
(...skipping 737 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
5177 &d, | 5220 &d, |
5178 &default_context_); | 5221 &default_context_); |
5179 req.SetReferrer("http://foo.com/test#fragment"); | 5222 req.SetReferrer("http://foo.com/test#fragment"); |
5180 req.SetReferrer(""); | 5223 req.SetReferrer(""); |
5181 req.Start(); | 5224 req.Start(); |
5182 base::RunLoop().Run(); | 5225 base::RunLoop().Run(); |
5183 | 5226 |
5184 EXPECT_EQ(std::string("None"), d.data_received()); | 5227 EXPECT_EQ(std::string("None"), d.data_received()); |
5185 } | 5228 } |
5186 | 5229 |
5230 // Defer network start and then resume, checking that the request was a success | |
5231 // and bytes were received. | |
5232 TEST_F(URLRequestTestHTTP, DeferredBeforeNetworkStart) { | |
5233 ASSERT_TRUE(test_server_.Start()); | |
5234 | |
5235 TestDelegate d; | |
5236 { | |
5237 d.set_quit_on_network_start(true); | |
5238 GURL test_url(test_server_.GetURL("echo")); | |
5239 URLRequest req(test_url, DEFAULT_PRIORITY, &d, &default_context_); | |
5240 | |
5241 req.Start(); | |
5242 base::RunLoop().Run(); | |
5243 | |
5244 EXPECT_EQ(1, d.received_before_network_start_count()); | |
5245 EXPECT_EQ(0, d.response_started_count()); | |
5246 | |
5247 req.ResumeNetworkStart(); | |
5248 base::RunLoop().Run(); | |
5249 | |
5250 EXPECT_EQ(1, d.response_started_count()); | |
5251 EXPECT_NE(0, d.bytes_received()); | |
5252 EXPECT_EQ(URLRequestStatus::SUCCESS, req.status().status()); | |
5253 } | |
5254 } | |
5255 | |
5256 // Check that OnBeforeNetworkStart is only called once even if there is a | |
5257 // redirect. | |
5258 TEST_F(URLRequestTestHTTP, BeforeNetworkStartCalledOnce) { | |
5259 ASSERT_TRUE(test_server_.Start()); | |
5260 | |
5261 TestDelegate d; | |
5262 { | |
5263 d.set_quit_on_redirect(true); | |
5264 d.set_quit_on_network_start(true); | |
5265 URLRequest req(test_server_.GetURL("server-redirect?simple.html"), | |
mmenke
2014/01/07 19:44:05
Why do we use simple.html here and echo in the oth
jkarlin
2014/01/07 20:10:03
Done.
| |
5266 DEFAULT_PRIORITY, | |
5267 &d, | |
5268 &default_context_); | |
5269 | |
5270 req.Start(); | |
5271 base::RunLoop().Run(); | |
5272 | |
5273 EXPECT_EQ(1, d.received_before_network_start_count()); | |
5274 EXPECT_EQ(0, d.response_started_count()); | |
5275 EXPECT_EQ(0, d.received_redirect_count()); | |
5276 | |
5277 req.ResumeNetworkStart(); | |
5278 base::RunLoop().Run(); | |
5279 | |
5280 EXPECT_EQ(1, d.received_redirect_count()); | |
5281 req.FollowDeferredRedirect(); | |
5282 base::RunLoop().Run(); | |
5283 | |
5284 // Check that the redirect's new network transaction does not get propagated | |
5285 // to a second OnBeforeNetworkStart() notification. | |
5286 EXPECT_EQ(1, d.received_before_network_start_count()); | |
5287 | |
5288 EXPECT_EQ(1, d.response_started_count()); | |
5289 EXPECT_NE(0, d.bytes_received()); | |
5290 EXPECT_EQ(URLRequestStatus::SUCCESS, req.status().status()); | |
5291 } | |
5292 } | |
5293 | |
5294 // Cancel the request after learning that the request would use the network. | |
5295 TEST_F(URLRequestTestHTTP, CancelOnBeforeNetworkStart) { | |
5296 ASSERT_TRUE(test_server_.Start()); | |
5297 | |
5298 TestDelegate d; | |
5299 { | |
5300 d.set_quit_on_network_start(true); | |
5301 GURL test_url(test_server_.GetURL("echo")); | |
5302 URLRequest req(test_url, DEFAULT_PRIORITY, &d, &default_context_); | |
5303 | |
5304 req.Start(); | |
5305 base::RunLoop().Run(); | |
5306 | |
5307 EXPECT_EQ(1, d.received_before_network_start_count()); | |
5308 EXPECT_EQ(0, d.response_started_count()); | |
5309 | |
5310 req.Cancel(); | |
5311 base::RunLoop().Run(); | |
5312 | |
5313 EXPECT_EQ(1, d.response_started_count()); | |
5314 EXPECT_EQ(0, d.bytes_received()); | |
5315 EXPECT_EQ(URLRequestStatus::CANCELED, req.status().status()); | |
5316 } | |
5317 } | |
5318 | |
5187 TEST_F(URLRequestTestHTTP, CancelRedirect) { | 5319 TEST_F(URLRequestTestHTTP, CancelRedirect) { |
5188 ASSERT_TRUE(test_server_.Start()); | 5320 ASSERT_TRUE(test_server_.Start()); |
5189 | 5321 |
5190 TestDelegate d; | 5322 TestDelegate d; |
5191 { | 5323 { |
5192 d.set_cancel_in_received_redirect(true); | 5324 d.set_cancel_in_received_redirect(true); |
5193 URLRequest req(test_server_.GetURL("files/redirect-test.html"), | 5325 URLRequest req(test_server_.GetURL("files/redirect-test.html"), |
5194 DEFAULT_PRIORITY, | 5326 DEFAULT_PRIORITY, |
5195 &d, | 5327 &d, |
5196 &default_context_); | 5328 &default_context_); |
(...skipping 2284 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
7481 | 7613 |
7482 EXPECT_FALSE(r.is_pending()); | 7614 EXPECT_FALSE(r.is_pending()); |
7483 EXPECT_EQ(1, d->response_started_count()); | 7615 EXPECT_EQ(1, d->response_started_count()); |
7484 EXPECT_FALSE(d->received_data_before_response()); | 7616 EXPECT_FALSE(d->received_data_before_response()); |
7485 EXPECT_EQ(d->bytes_received(), static_cast<int>(file_size)); | 7617 EXPECT_EQ(d->bytes_received(), static_cast<int>(file_size)); |
7486 } | 7618 } |
7487 } | 7619 } |
7488 #endif // !defined(DISABLE_FTP_SUPPORT) | 7620 #endif // !defined(DISABLE_FTP_SUPPORT) |
7489 | 7621 |
7490 } // namespace net | 7622 } // namespace net |
OLD | NEW |