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

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

Issue 2315613002: Extracted NetLog class's inner enum types into their own enum classes and (Closed)
Patch Set: Ran "git cl format" on code. Much formatting ensued. Created 4 years, 3 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
« no previous file with comments | « net/url_request/url_request_throttler_manager.cc ('k') | no next file » | 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) 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 <memory> 5 #include <memory>
6 #include <utility> 6 #include <utility>
7 7
8 #include "base/memory/ptr_util.h" 8 #include "base/memory/ptr_util.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 #include "net/disk_cache/disk_cache.h" 71 #include "net/disk_cache/disk_cache.h"
72 #include "net/dns/mock_host_resolver.h" 72 #include "net/dns/mock_host_resolver.h"
73 #include "net/http/http_byte_range.h" 73 #include "net/http/http_byte_range.h"
74 #include "net/http/http_cache.h" 74 #include "net/http/http_cache.h"
75 #include "net/http/http_network_layer.h" 75 #include "net/http/http_network_layer.h"
76 #include "net/http/http_network_session.h" 76 #include "net/http/http_network_session.h"
77 #include "net/http/http_request_headers.h" 77 #include "net/http/http_request_headers.h"
78 #include "net/http/http_response_headers.h" 78 #include "net/http/http_response_headers.h"
79 #include "net/http/http_util.h" 79 #include "net/http/http_util.h"
80 #include "net/log/net_log.h" 80 #include "net/log/net_log.h"
81 #include "net/log/net_log_event_type.h"
81 #include "net/log/test_net_log.h" 82 #include "net/log/test_net_log.h"
82 #include "net/log/test_net_log_entry.h" 83 #include "net/log/test_net_log_entry.h"
83 #include "net/log/test_net_log_util.h" 84 #include "net/log/test_net_log_util.h"
84 #include "net/nqe/external_estimate_provider.h" 85 #include "net/nqe/external_estimate_provider.h"
85 #include "net/proxy/proxy_service.h" 86 #include "net/proxy/proxy_service.h"
86 #include "net/socket/ssl_client_socket.h" 87 #include "net/socket/ssl_client_socket.h"
87 #include "net/ssl/channel_id_service.h" 88 #include "net/ssl/channel_id_service.h"
88 #include "net/ssl/default_channel_id_store.h" 89 #include "net/ssl/default_channel_id_store.h"
89 #include "net/ssl/ssl_connection_status_flags.h" 90 #include "net/ssl/ssl_connection_status_flags.h"
90 #include "net/ssl/ssl_server_config.h" 91 #include "net/ssl/ssl_server_config.h"
(...skipping 4712 matching lines...) Expand 10 before | Expand all | Expand 10 after
4803 // recorded. Returns the index of entry after the expected number of 4804 // recorded. Returns the index of entry after the expected number of
4804 // events this logged, or entries.size() if there aren't enough entries. 4805 // events this logged, or entries.size() if there aren't enough entries.
4805 static size_t CheckDelegateInfo(const TestNetLogEntry::List& entries, 4806 static size_t CheckDelegateInfo(const TestNetLogEntry::List& entries,
4806 size_t log_position) { 4807 size_t log_position) {
4807 // There should be 4 DELEGATE_INFO events: Two begins and two ends. 4808 // There should be 4 DELEGATE_INFO events: Two begins and two ends.
4808 if (log_position + 3 >= entries.size()) { 4809 if (log_position + 3 >= entries.size()) {
4809 ADD_FAILURE() << "Not enough log entries"; 4810 ADD_FAILURE() << "Not enough log entries";
4810 return entries.size(); 4811 return entries.size();
4811 } 4812 }
4812 std::string delegate_info; 4813 std::string delegate_info;
4813 EXPECT_EQ(NetLog::TYPE_DELEGATE_INFO, entries[log_position].type); 4814 EXPECT_EQ(NetLogEventType::DELEGATE_INFO, entries[log_position].type);
4814 EXPECT_EQ(NetLog::PHASE_BEGIN, entries[log_position].phase); 4815 EXPECT_EQ(NetLogEventPhase::BEGIN, entries[log_position].phase);
4815 EXPECT_TRUE(entries[log_position].GetStringValue("delegate_info", 4816 EXPECT_TRUE(entries[log_position].GetStringValue("delegate_info",
4816 &delegate_info)); 4817 &delegate_info));
4817 EXPECT_EQ(kFirstDelegateInfo, delegate_info); 4818 EXPECT_EQ(kFirstDelegateInfo, delegate_info);
4818 4819
4819 ++log_position; 4820 ++log_position;
4820 EXPECT_EQ(NetLog::TYPE_DELEGATE_INFO, entries[log_position].type); 4821 EXPECT_EQ(NetLogEventType::DELEGATE_INFO, entries[log_position].type);
4821 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 4822 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
4822 4823
4823 ++log_position; 4824 ++log_position;
4824 EXPECT_EQ(NetLog::TYPE_DELEGATE_INFO, entries[log_position].type); 4825 EXPECT_EQ(NetLogEventType::DELEGATE_INFO, entries[log_position].type);
4825 EXPECT_EQ(NetLog::PHASE_BEGIN, entries[log_position].phase); 4826 EXPECT_EQ(NetLogEventPhase::BEGIN, entries[log_position].phase);
4826 EXPECT_TRUE(entries[log_position].GetStringValue("delegate_info", 4827 EXPECT_TRUE(entries[log_position].GetStringValue("delegate_info",
4827 &delegate_info)); 4828 &delegate_info));
4828 EXPECT_EQ(kSecondDelegateInfo, delegate_info); 4829 EXPECT_EQ(kSecondDelegateInfo, delegate_info);
4829 4830
4830 ++log_position; 4831 ++log_position;
4831 EXPECT_EQ(NetLog::TYPE_DELEGATE_INFO, entries[log_position].type); 4832 EXPECT_EQ(NetLogEventType::DELEGATE_INFO, entries[log_position].type);
4832 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 4833 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
4833 4834
4834 return log_position + 1; 4835 return log_position + 1;
4835 } 4836 }
4836 4837
4837 private: 4838 private:
4838 friend class base::RefCounted<AsyncDelegateLogger>; 4839 friend class base::RefCounted<AsyncDelegateLogger>;
4839 4840
4840 AsyncDelegateLogger(URLRequest* url_request, 4841 AsyncDelegateLogger(URLRequest* url_request,
4841 LoadState expected_first_load_state, 4842 LoadState expected_first_load_state,
4842 LoadState expected_second_load_state, 4843 LoadState expected_second_load_state,
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after
5080 5081
5081 base::RunLoop().Run(); 5082 base::RunLoop().Run();
5082 5083
5083 EXPECT_EQ(200, r->GetResponseCode()); 5084 EXPECT_EQ(200, r->GetResponseCode());
5084 EXPECT_EQ(URLRequestStatus::SUCCESS, r->status().status()); 5085 EXPECT_EQ(URLRequestStatus::SUCCESS, r->status().status());
5085 } 5086 }
5086 5087
5087 TestNetLogEntry::List entries; 5088 TestNetLogEntry::List entries;
5088 net_log_.GetEntries(&entries); 5089 net_log_.GetEntries(&entries);
5089 size_t log_position = ExpectLogContainsSomewhereAfter( 5090 size_t log_position = ExpectLogContainsSomewhereAfter(
5090 entries, 5091 entries, 0, NetLogEventType::DELEGATE_INFO, NetLogEventPhase::BEGIN);
5091 0,
5092 NetLog::TYPE_DELEGATE_INFO,
5093 NetLog::PHASE_BEGIN);
5094 5092
5095 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, log_position); 5093 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, log_position);
5096 5094
5097 // Nothing else should add any delegate info to the request. 5095 // Nothing else should add any delegate info to the request.
5098 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5096 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5099 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5097 NetLogEventType::DELEGATE_INFO));
5100 } 5098 }
5101 5099
5102 // Tests handling of delegate info from a network delegate. 5100 // Tests handling of delegate info from a network delegate.
5103 TEST_F(URLRequestTestHTTP, NetworkDelegateInfo) { 5101 TEST_F(URLRequestTestHTTP, NetworkDelegateInfo) {
5104 ASSERT_TRUE(http_test_server()->Start()); 5102 ASSERT_TRUE(http_test_server()->Start());
5105 5103
5106 TestDelegate request_delegate; 5104 TestDelegate request_delegate;
5107 AsyncLoggingNetworkDelegate network_delegate; 5105 AsyncLoggingNetworkDelegate network_delegate;
5108 TestURLRequestContext context(true); 5106 TestURLRequestContext context(true);
5109 context.set_network_delegate(&network_delegate); 5107 context.set_network_delegate(&network_delegate);
(...skipping 16 matching lines...) Expand all
5126 EXPECT_EQ(1, network_delegate.created_requests()); 5124 EXPECT_EQ(1, network_delegate.created_requests());
5127 EXPECT_EQ(0, network_delegate.destroyed_requests()); 5125 EXPECT_EQ(0, network_delegate.destroyed_requests());
5128 } 5126 }
5129 EXPECT_EQ(1, network_delegate.destroyed_requests()); 5127 EXPECT_EQ(1, network_delegate.destroyed_requests());
5130 5128
5131 size_t log_position = 0; 5129 size_t log_position = 0;
5132 TestNetLogEntry::List entries; 5130 TestNetLogEntry::List entries;
5133 net_log_.GetEntries(&entries); 5131 net_log_.GetEntries(&entries);
5134 for (size_t i = 0; i < 3; ++i) { 5132 for (size_t i = 0; i < 3; ++i) {
5135 log_position = ExpectLogContainsSomewhereAfter( 5133 log_position = ExpectLogContainsSomewhereAfter(
5136 entries, 5134 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE,
5137 log_position + 1, 5135 NetLogEventPhase::BEGIN);
5138 NetLog::TYPE_URL_REQUEST_DELEGATE,
5139 NetLog::PHASE_BEGIN);
5140 5136
5141 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5137 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5142 log_position + 1); 5138 log_position + 1);
5143 5139
5144 ASSERT_LT(log_position, entries.size()); 5140 ASSERT_LT(log_position, entries.size());
5145 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5141 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE,
5146 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5142 entries[log_position].type);
5143 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5147 } 5144 }
5148 5145
5149 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5146 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5150 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5147 NetLogEventType::DELEGATE_INFO));
5151 } 5148 }
5152 5149
5153 // Tests handling of delegate info from a network delegate in the case of an 5150 // Tests handling of delegate info from a network delegate in the case of an
5154 // HTTP redirect. 5151 // HTTP redirect.
5155 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoRedirect) { 5152 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoRedirect) {
5156 ASSERT_TRUE(http_test_server()->Start()); 5153 ASSERT_TRUE(http_test_server()->Start());
5157 5154
5158 TestDelegate request_delegate; 5155 TestDelegate request_delegate;
5159 AsyncLoggingNetworkDelegate network_delegate; 5156 AsyncLoggingNetworkDelegate network_delegate;
5160 TestURLRequestContext context(true); 5157 TestURLRequestContext context(true);
(...skipping 19 matching lines...) Expand all
5180 } 5177 }
5181 EXPECT_EQ(1, network_delegate.destroyed_requests()); 5178 EXPECT_EQ(1, network_delegate.destroyed_requests());
5182 5179
5183 size_t log_position = 0; 5180 size_t log_position = 0;
5184 TestNetLogEntry::List entries; 5181 TestNetLogEntry::List entries;
5185 net_log_.GetEntries(&entries); 5182 net_log_.GetEntries(&entries);
5186 // The NetworkDelegate logged information in OnBeforeURLRequest, 5183 // The NetworkDelegate logged information in OnBeforeURLRequest,
5187 // OnBeforeStartTransaction, and OnHeadersReceived. 5184 // OnBeforeStartTransaction, and OnHeadersReceived.
5188 for (size_t i = 0; i < 3; ++i) { 5185 for (size_t i = 0; i < 3; ++i) {
5189 log_position = ExpectLogContainsSomewhereAfter( 5186 log_position = ExpectLogContainsSomewhereAfter(
5190 entries, 5187 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE,
5191 log_position + 1, 5188 NetLogEventPhase::BEGIN);
5192 NetLog::TYPE_URL_REQUEST_DELEGATE,
5193 NetLog::PHASE_BEGIN);
5194 5189
5195 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5190 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5196 log_position + 1); 5191 log_position + 1);
5197 5192
5198 ASSERT_LT(log_position, entries.size()); 5193 ASSERT_LT(log_position, entries.size());
5199 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5194 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE,
5200 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5195 entries[log_position].type);
5196 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5201 } 5197 }
5202 5198
5203 // The URLRequest::Delegate then gets informed about the redirect. 5199 // The URLRequest::Delegate then gets informed about the redirect.
5204 log_position = ExpectLogContainsSomewhereAfter( 5200 log_position = ExpectLogContainsSomewhereAfter(
5205 entries, 5201 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE,
5206 log_position + 1, 5202 NetLogEventPhase::BEGIN);
5207 NetLog::TYPE_URL_REQUEST_DELEGATE,
5208 NetLog::PHASE_BEGIN);
5209 5203
5210 // The NetworkDelegate logged information in the same three events as before. 5204 // The NetworkDelegate logged information in the same three events as before.
5211 for (size_t i = 0; i < 3; ++i) { 5205 for (size_t i = 0; i < 3; ++i) {
5212 log_position = ExpectLogContainsSomewhereAfter( 5206 log_position = ExpectLogContainsSomewhereAfter(
5213 entries, 5207 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE,
5214 log_position + 1, 5208 NetLogEventPhase::BEGIN);
5215 NetLog::TYPE_URL_REQUEST_DELEGATE,
5216 NetLog::PHASE_BEGIN);
5217 5209
5218 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5210 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5219 log_position + 1); 5211 log_position + 1);
5220 5212
5221 ASSERT_LT(log_position, entries.size()); 5213 ASSERT_LT(log_position, entries.size());
5222 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5214 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE,
5223 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5215 entries[log_position].type);
5216 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5224 } 5217 }
5225 5218
5226 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5219 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5227 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5220 NetLogEventType::DELEGATE_INFO));
5228 } 5221 }
5229 5222
5230 // Tests handling of delegate info from a network delegate in the case of HTTP 5223 // Tests handling of delegate info from a network delegate in the case of HTTP
5231 // AUTH. 5224 // AUTH.
5232 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoAuth) { 5225 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoAuth) {
5233 ASSERT_TRUE(http_test_server()->Start()); 5226 ASSERT_TRUE(http_test_server()->Start());
5234 5227
5235 TestDelegate request_delegate; 5228 TestDelegate request_delegate;
5236 AsyncLoggingNetworkDelegate network_delegate; 5229 AsyncLoggingNetworkDelegate network_delegate;
5237 TestURLRequestContext context(true); 5230 TestURLRequestContext context(true);
(...skipping 21 matching lines...) Expand all
5259 5252
5260 size_t log_position = 0; 5253 size_t log_position = 0;
5261 TestNetLogEntry::List entries; 5254 TestNetLogEntry::List entries;
5262 net_log_.GetEntries(&entries); 5255 net_log_.GetEntries(&entries);
5263 // The NetworkDelegate should have logged information in OnBeforeURLRequest, 5256 // The NetworkDelegate should have logged information in OnBeforeURLRequest,
5264 // OnBeforeStartTransaction, OnHeadersReceived, OnAuthRequired, and then again 5257 // OnBeforeStartTransaction, OnHeadersReceived, OnAuthRequired, and then again
5265 // in 5258 // in
5266 // OnBeforeURLRequest and OnBeforeStartTransaction. 5259 // OnBeforeURLRequest and OnBeforeStartTransaction.
5267 for (size_t i = 0; i < 6; ++i) { 5260 for (size_t i = 0; i < 6; ++i) {
5268 log_position = ExpectLogContainsSomewhereAfter( 5261 log_position = ExpectLogContainsSomewhereAfter(
5269 entries, 5262 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE,
5270 log_position + 1, 5263 NetLogEventPhase::BEGIN);
5271 NetLog::TYPE_URL_REQUEST_DELEGATE,
5272 NetLog::PHASE_BEGIN);
5273 5264
5274 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5265 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5275 log_position + 1); 5266 log_position + 1);
5276 5267
5277 ASSERT_LT(log_position, entries.size()); 5268 ASSERT_LT(log_position, entries.size());
5278 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5269 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE,
5279 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5270 entries[log_position].type);
5271 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5280 } 5272 }
5281 5273
5282 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5274 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5283 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5275 NetLogEventType::DELEGATE_INFO));
5284 } 5276 }
5285 5277
5286 // TODO(svaldez): Update tests to use EmbeddedTestServer. 5278 // TODO(svaldez): Update tests to use EmbeddedTestServer.
5287 #if !defined(OS_IOS) 5279 #if !defined(OS_IOS)
5288 // Tests handling of delegate info from a URLRequest::Delegate. 5280 // Tests handling of delegate info from a URLRequest::Delegate.
5289 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfo) { 5281 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfo) {
5290 SpawnedTestServer test_server(SpawnedTestServer::TYPE_HTTP, 5282 SpawnedTestServer test_server(SpawnedTestServer::TYPE_HTTP,
5291 SpawnedTestServer::kLocalhost, 5283 SpawnedTestServer::kLocalhost,
5292 base::FilePath(kTestFilePath)); 5284 base::FilePath(kTestFilePath));
5293 5285
(...skipping 23 matching lines...) Expand all
5317 EXPECT_EQ(URLRequestStatus::SUCCESS, r->status().status()); 5309 EXPECT_EQ(URLRequestStatus::SUCCESS, r->status().status());
5318 } 5310 }
5319 5311
5320 TestNetLogEntry::List entries; 5312 TestNetLogEntry::List entries;
5321 net_log_.GetEntries(&entries); 5313 net_log_.GetEntries(&entries);
5322 5314
5323 size_t log_position = 0; 5315 size_t log_position = 0;
5324 5316
5325 // The delegate info should only have been logged on header complete. Other 5317 // The delegate info should only have been logged on header complete. Other
5326 // times it should silently be ignored. 5318 // times it should silently be ignored.
5327 log_position = 5319 log_position = ExpectLogContainsSomewhereAfter(
5328 ExpectLogContainsSomewhereAfter(entries, 5320 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE,
5329 log_position + 1, 5321 NetLogEventPhase::BEGIN);
5330 NetLog::TYPE_URL_REQUEST_DELEGATE,
5331 NetLog::PHASE_BEGIN);
5332 5322
5333 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5323 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5334 log_position + 1); 5324 log_position + 1);
5335 5325
5336 ASSERT_LT(log_position, entries.size()); 5326 ASSERT_LT(log_position, entries.size());
5337 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5327 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, entries[log_position].type);
5338 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5328 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5339 5329
5330 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5331 NetLogEventType::DELEGATE_INFO));
5340 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5332 EXPECT_FALSE(LogContainsEntryWithTypeAfter(
5341 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5333 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE));
5342 EXPECT_FALSE(LogContainsEntryWithTypeAfter(
5343 entries, log_position + 1, NetLog::TYPE_URL_REQUEST_DELEGATE));
5344 } 5334 }
5345 #endif // !defined(OS_IOS) 5335 #endif // !defined(OS_IOS)
5346 5336
5347 // Tests handling of delegate info from a URLRequest::Delegate in the case of 5337 // Tests handling of delegate info from a URLRequest::Delegate in the case of
5348 // an HTTP redirect. 5338 // an HTTP redirect.
5349 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfoOnRedirect) { 5339 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfoOnRedirect) {
5350 ASSERT_TRUE(http_test_server()->Start()); 5340 ASSERT_TRUE(http_test_server()->Start());
5351 5341
5352 AsyncLoggingUrlRequestDelegate request_delegate( 5342 AsyncLoggingUrlRequestDelegate request_delegate(
5353 AsyncLoggingUrlRequestDelegate::NO_CANCEL); 5343 AsyncLoggingUrlRequestDelegate::NO_CANCEL);
(...skipping 15 matching lines...) Expand all
5369 } 5359 }
5370 5360
5371 TestNetLogEntry::List entries; 5361 TestNetLogEntry::List entries;
5372 net_log_.GetEntries(&entries); 5362 net_log_.GetEntries(&entries);
5373 5363
5374 // Delegate info should only have been logged in OnReceivedRedirect and 5364 // Delegate info should only have been logged in OnReceivedRedirect and
5375 // OnResponseStarted. 5365 // OnResponseStarted.
5376 size_t log_position = 0; 5366 size_t log_position = 0;
5377 for (int i = 0; i < 2; ++i) { 5367 for (int i = 0; i < 2; ++i) {
5378 log_position = ExpectLogContainsSomewhereAfter( 5368 log_position = ExpectLogContainsSomewhereAfter(
5379 entries, 5369 entries, log_position, NetLogEventType::URL_REQUEST_DELEGATE,
5380 log_position, 5370 NetLogEventPhase::BEGIN);
5381 NetLog::TYPE_URL_REQUEST_DELEGATE,
5382 NetLog::PHASE_BEGIN);
5383 5371
5384 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5372 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5385 log_position + 1); 5373 log_position + 1);
5386 5374
5387 ASSERT_LT(log_position, entries.size()); 5375 ASSERT_LT(log_position, entries.size());
5388 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5376 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE,
5389 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5377 entries[log_position].type);
5378 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5390 } 5379 }
5391 5380
5381 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5382 NetLogEventType::DELEGATE_INFO));
5392 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5383 EXPECT_FALSE(LogContainsEntryWithTypeAfter(
5393 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5384 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE));
5394 EXPECT_FALSE(LogContainsEntryWithTypeAfter(
5395 entries, log_position + 1, NetLog::TYPE_URL_REQUEST_DELEGATE));
5396 } 5385 }
5397 5386
5398 // Tests handling of delegate info from a URLRequest::Delegate in the case of 5387 // Tests handling of delegate info from a URLRequest::Delegate in the case of
5399 // an HTTP redirect, with cancellation at various points. 5388 // an HTTP redirect, with cancellation at various points.
5400 TEST_F(URLRequestTestHTTP, URLRequestDelegateOnRedirectCancelled) { 5389 TEST_F(URLRequestTestHTTP, URLRequestDelegateOnRedirectCancelled) {
5401 ASSERT_TRUE(http_test_server()->Start()); 5390 ASSERT_TRUE(http_test_server()->Start());
5402 5391
5403 const AsyncLoggingUrlRequestDelegate::CancelStage kCancelStages[] = { 5392 const AsyncLoggingUrlRequestDelegate::CancelStage kCancelStages[] = {
5404 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RECEIVED_REDIRECT, 5393 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RECEIVED_REDIRECT,
5405 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RESPONSE_STARTED, 5394 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RESPONSE_STARTED,
(...skipping 22 matching lines...) Expand all
5428 TestNetLogEntry::List entries; 5417 TestNetLogEntry::List entries;
5429 net_log.GetEntries(&entries); 5418 net_log.GetEntries(&entries);
5430 5419
5431 // Delegate info is always logged in both OnReceivedRedirect and 5420 // Delegate info is always logged in both OnReceivedRedirect and
5432 // OnResponseStarted. In the CANCEL_ON_RECEIVED_REDIRECT, the 5421 // OnResponseStarted. In the CANCEL_ON_RECEIVED_REDIRECT, the
5433 // OnResponseStarted delegate call is after cancellation, but logging is 5422 // OnResponseStarted delegate call is after cancellation, but logging is
5434 // still currently supported in that call. 5423 // still currently supported in that call.
5435 size_t log_position = 0; 5424 size_t log_position = 0;
5436 for (int i = 0; i < 2; ++i) { 5425 for (int i = 0; i < 2; ++i) {
5437 log_position = ExpectLogContainsSomewhereAfter( 5426 log_position = ExpectLogContainsSomewhereAfter(
5438 entries, 5427 entries, log_position, NetLogEventType::URL_REQUEST_DELEGATE,
5439 log_position, 5428 NetLogEventPhase::BEGIN);
5440 NetLog::TYPE_URL_REQUEST_DELEGATE,
5441 NetLog::PHASE_BEGIN);
5442 5429
5443 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, 5430 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries,
5444 log_position + 1); 5431 log_position + 1);
5445 5432
5446 ASSERT_LT(log_position, entries.size()); 5433 ASSERT_LT(log_position, entries.size());
5447 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); 5434 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE,
5448 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); 5435 entries[log_position].type);
5436 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase);
5449 } 5437 }
5450 5438
5439 EXPECT_FALSE(LogContainsEntryWithTypeAfter(entries, log_position + 1,
5440 NetLogEventType::DELEGATE_INFO));
5451 EXPECT_FALSE(LogContainsEntryWithTypeAfter( 5441 EXPECT_FALSE(LogContainsEntryWithTypeAfter(
5452 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); 5442 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE));
5453 EXPECT_FALSE(LogContainsEntryWithTypeAfter(
5454 entries, log_position + 1, NetLog::TYPE_URL_REQUEST_DELEGATE));
5455 } 5443 }
5456 } 5444 }
5457 5445
5458 namespace { 5446 namespace {
5459 5447
5460 const char kExtraHeader[] = "Allow-Snafu"; 5448 const char kExtraHeader[] = "Allow-Snafu";
5461 const char kExtraValue[] = "fubar"; 5449 const char kExtraValue[] = "fubar";
5462 5450
5463 class RedirectWithAdditionalHeadersDelegate : public TestDelegate { 5451 class RedirectWithAdditionalHeadersDelegate : public TestDelegate {
5464 void OnReceivedRedirect(URLRequest* request, 5452 void OnReceivedRedirect(URLRequest* request,
(...skipping 4787 matching lines...) Expand 10 before | Expand all | Expand 10 after
10252 AddTestInterceptor()->set_main_intercept_job(std::move(job)); 10240 AddTestInterceptor()->set_main_intercept_job(std::move(job));
10253 10241
10254 req->Start(); 10242 req->Start();
10255 req->Cancel(); 10243 req->Cancel();
10256 base::RunLoop().RunUntilIdle(); 10244 base::RunLoop().RunUntilIdle();
10257 EXPECT_EQ(URLRequestStatus::CANCELED, req->status().status()); 10245 EXPECT_EQ(URLRequestStatus::CANCELED, req->status().status());
10258 EXPECT_EQ(0, d.received_redirect_count()); 10246 EXPECT_EQ(0, d.received_redirect_count());
10259 } 10247 }
10260 10248
10261 } // namespace net 10249 } // namespace net
OLDNEW
« no previous file with comments | « net/url_request/url_request_throttler_manager.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698