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 <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 Loading... |
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 Loading... |
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 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
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, |
5091 0, | 5092 0, |
5092 NetLog::TYPE_DELEGATE_INFO, | 5093 NetLogEventType::DELEGATE_INFO, |
5093 NetLog::PHASE_BEGIN); | 5094 NetLogEventPhase::BEGIN); |
5094 | 5095 |
5095 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, log_position); | 5096 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, log_position); |
5096 | 5097 |
5097 // Nothing else should add any delegate info to the request. | 5098 // Nothing else should add any delegate info to the request. |
5098 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5099 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5099 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5100 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5100 } | 5101 } |
5101 | 5102 |
5102 // Tests handling of delegate info from a network delegate. | 5103 // Tests handling of delegate info from a network delegate. |
5103 TEST_F(URLRequestTestHTTP, NetworkDelegateInfo) { | 5104 TEST_F(URLRequestTestHTTP, NetworkDelegateInfo) { |
5104 ASSERT_TRUE(http_test_server()->Start()); | 5105 ASSERT_TRUE(http_test_server()->Start()); |
5105 | 5106 |
5106 TestDelegate request_delegate; | 5107 TestDelegate request_delegate; |
5107 AsyncLoggingNetworkDelegate network_delegate; | 5108 AsyncLoggingNetworkDelegate network_delegate; |
5108 TestURLRequestContext context(true); | 5109 TestURLRequestContext context(true); |
5109 context.set_network_delegate(&network_delegate); | 5110 context.set_network_delegate(&network_delegate); |
(...skipping 18 matching lines...) Expand all Loading... |
5128 } | 5129 } |
5129 EXPECT_EQ(1, network_delegate.destroyed_requests()); | 5130 EXPECT_EQ(1, network_delegate.destroyed_requests()); |
5130 | 5131 |
5131 size_t log_position = 0; | 5132 size_t log_position = 0; |
5132 TestNetLogEntry::List entries; | 5133 TestNetLogEntry::List entries; |
5133 net_log_.GetEntries(&entries); | 5134 net_log_.GetEntries(&entries); |
5134 for (size_t i = 0; i < 3; ++i) { | 5135 for (size_t i = 0; i < 3; ++i) { |
5135 log_position = ExpectLogContainsSomewhereAfter( | 5136 log_position = ExpectLogContainsSomewhereAfter( |
5136 entries, | 5137 entries, |
5137 log_position + 1, | 5138 log_position + 1, |
5138 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5139 NetLogEventType::URL_REQUEST_DELEGATE, |
5139 NetLog::PHASE_BEGIN); | 5140 NetLogEventPhase::BEGIN); |
5140 | 5141 |
5141 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5142 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5142 log_position + 1); | 5143 log_position + 1); |
5143 | 5144 |
5144 ASSERT_LT(log_position, entries.size()); | 5145 ASSERT_LT(log_position, entries.size()); |
5145 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5146 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, |
5146 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5147 entries[log_position].type); |
| 5148 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5147 } | 5149 } |
5148 | 5150 |
5149 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5151 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5150 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5152 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5151 } | 5153 } |
5152 | 5154 |
5153 // Tests handling of delegate info from a network delegate in the case of an | 5155 // Tests handling of delegate info from a network delegate in the case of an |
5154 // HTTP redirect. | 5156 // HTTP redirect. |
5155 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoRedirect) { | 5157 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoRedirect) { |
5156 ASSERT_TRUE(http_test_server()->Start()); | 5158 ASSERT_TRUE(http_test_server()->Start()); |
5157 | 5159 |
5158 TestDelegate request_delegate; | 5160 TestDelegate request_delegate; |
5159 AsyncLoggingNetworkDelegate network_delegate; | 5161 AsyncLoggingNetworkDelegate network_delegate; |
5160 TestURLRequestContext context(true); | 5162 TestURLRequestContext context(true); |
(...skipping 21 matching lines...) Expand all Loading... |
5182 | 5184 |
5183 size_t log_position = 0; | 5185 size_t log_position = 0; |
5184 TestNetLogEntry::List entries; | 5186 TestNetLogEntry::List entries; |
5185 net_log_.GetEntries(&entries); | 5187 net_log_.GetEntries(&entries); |
5186 // The NetworkDelegate logged information in OnBeforeURLRequest, | 5188 // The NetworkDelegate logged information in OnBeforeURLRequest, |
5187 // OnBeforeStartTransaction, and OnHeadersReceived. | 5189 // OnBeforeStartTransaction, and OnHeadersReceived. |
5188 for (size_t i = 0; i < 3; ++i) { | 5190 for (size_t i = 0; i < 3; ++i) { |
5189 log_position = ExpectLogContainsSomewhereAfter( | 5191 log_position = ExpectLogContainsSomewhereAfter( |
5190 entries, | 5192 entries, |
5191 log_position + 1, | 5193 log_position + 1, |
5192 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5194 NetLogEventType::URL_REQUEST_DELEGATE, |
5193 NetLog::PHASE_BEGIN); | 5195 NetLogEventPhase::BEGIN); |
5194 | 5196 |
5195 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5197 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5196 log_position + 1); | 5198 log_position + 1); |
5197 | 5199 |
5198 ASSERT_LT(log_position, entries.size()); | 5200 ASSERT_LT(log_position, entries.size()); |
5199 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5201 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, |
5200 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5202 entries[log_position].type); |
| 5203 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5201 } | 5204 } |
5202 | 5205 |
5203 // The URLRequest::Delegate then gets informed about the redirect. | 5206 // The URLRequest::Delegate then gets informed about the redirect. |
5204 log_position = ExpectLogContainsSomewhereAfter( | 5207 log_position = ExpectLogContainsSomewhereAfter( |
5205 entries, | 5208 entries, |
5206 log_position + 1, | 5209 log_position + 1, |
5207 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5210 NetLogEventType::URL_REQUEST_DELEGATE, |
5208 NetLog::PHASE_BEGIN); | 5211 NetLogEventPhase::BEGIN); |
5209 | 5212 |
5210 // The NetworkDelegate logged information in the same three events as before. | 5213 // The NetworkDelegate logged information in the same three events as before. |
5211 for (size_t i = 0; i < 3; ++i) { | 5214 for (size_t i = 0; i < 3; ++i) { |
5212 log_position = ExpectLogContainsSomewhereAfter( | 5215 log_position = ExpectLogContainsSomewhereAfter( |
5213 entries, | 5216 entries, |
5214 log_position + 1, | 5217 log_position + 1, |
5215 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5218 NetLogEventType::URL_REQUEST_DELEGATE, |
5216 NetLog::PHASE_BEGIN); | 5219 NetLogEventPhase::BEGIN); |
5217 | 5220 |
5218 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5221 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5219 log_position + 1); | 5222 log_position + 1); |
5220 | 5223 |
5221 ASSERT_LT(log_position, entries.size()); | 5224 ASSERT_LT(log_position, entries.size()); |
5222 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5225 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, |
5223 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5226 entries[log_position].type); |
| 5227 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5224 } | 5228 } |
5225 | 5229 |
5226 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5230 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5227 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5231 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5228 } | 5232 } |
5229 | 5233 |
5230 // Tests handling of delegate info from a network delegate in the case of HTTP | 5234 // Tests handling of delegate info from a network delegate in the case of HTTP |
5231 // AUTH. | 5235 // AUTH. |
5232 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoAuth) { | 5236 TEST_F(URLRequestTestHTTP, NetworkDelegateInfoAuth) { |
5233 ASSERT_TRUE(http_test_server()->Start()); | 5237 ASSERT_TRUE(http_test_server()->Start()); |
5234 | 5238 |
5235 TestDelegate request_delegate; | 5239 TestDelegate request_delegate; |
5236 AsyncLoggingNetworkDelegate network_delegate; | 5240 AsyncLoggingNetworkDelegate network_delegate; |
5237 TestURLRequestContext context(true); | 5241 TestURLRequestContext context(true); |
(...skipping 23 matching lines...) Expand all Loading... |
5261 TestNetLogEntry::List entries; | 5265 TestNetLogEntry::List entries; |
5262 net_log_.GetEntries(&entries); | 5266 net_log_.GetEntries(&entries); |
5263 // The NetworkDelegate should have logged information in OnBeforeURLRequest, | 5267 // The NetworkDelegate should have logged information in OnBeforeURLRequest, |
5264 // OnBeforeStartTransaction, OnHeadersReceived, OnAuthRequired, and then again | 5268 // OnBeforeStartTransaction, OnHeadersReceived, OnAuthRequired, and then again |
5265 // in | 5269 // in |
5266 // OnBeforeURLRequest and OnBeforeStartTransaction. | 5270 // OnBeforeURLRequest and OnBeforeStartTransaction. |
5267 for (size_t i = 0; i < 6; ++i) { | 5271 for (size_t i = 0; i < 6; ++i) { |
5268 log_position = ExpectLogContainsSomewhereAfter( | 5272 log_position = ExpectLogContainsSomewhereAfter( |
5269 entries, | 5273 entries, |
5270 log_position + 1, | 5274 log_position + 1, |
5271 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5275 NetLogEventType::URL_REQUEST_DELEGATE, |
5272 NetLog::PHASE_BEGIN); | 5276 NetLogEventPhase::BEGIN); |
5273 | 5277 |
5274 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5278 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5275 log_position + 1); | 5279 log_position + 1); |
5276 | 5280 |
5277 ASSERT_LT(log_position, entries.size()); | 5281 ASSERT_LT(log_position, entries.size()); |
5278 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5282 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, |
5279 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5283 entries[log_position].type); |
| 5284 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5280 } | 5285 } |
5281 | 5286 |
5282 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5287 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5283 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5288 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5284 } | 5289 } |
5285 | 5290 |
5286 // TODO(svaldez): Update tests to use EmbeddedTestServer. | 5291 // TODO(svaldez): Update tests to use EmbeddedTestServer. |
5287 #if !defined(OS_IOS) | 5292 #if !defined(OS_IOS) |
5288 // Tests handling of delegate info from a URLRequest::Delegate. | 5293 // Tests handling of delegate info from a URLRequest::Delegate. |
5289 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfo) { | 5294 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfo) { |
5290 SpawnedTestServer test_server(SpawnedTestServer::TYPE_HTTP, | 5295 SpawnedTestServer test_server(SpawnedTestServer::TYPE_HTTP, |
5291 SpawnedTestServer::kLocalhost, | 5296 SpawnedTestServer::kLocalhost, |
5292 base::FilePath(kTestFilePath)); | 5297 base::FilePath(kTestFilePath)); |
5293 | 5298 |
(...skipping 26 matching lines...) Expand all Loading... |
5320 TestNetLogEntry::List entries; | 5325 TestNetLogEntry::List entries; |
5321 net_log_.GetEntries(&entries); | 5326 net_log_.GetEntries(&entries); |
5322 | 5327 |
5323 size_t log_position = 0; | 5328 size_t log_position = 0; |
5324 | 5329 |
5325 // The delegate info should only have been logged on header complete. Other | 5330 // The delegate info should only have been logged on header complete. Other |
5326 // times it should silently be ignored. | 5331 // times it should silently be ignored. |
5327 log_position = | 5332 log_position = |
5328 ExpectLogContainsSomewhereAfter(entries, | 5333 ExpectLogContainsSomewhereAfter(entries, |
5329 log_position + 1, | 5334 log_position + 1, |
5330 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5335 NetLogEventType::URL_REQUEST_DELEGATE, |
5331 NetLog::PHASE_BEGIN); | 5336 NetLogEventPhase::BEGIN); |
5332 | 5337 |
5333 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5338 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5334 log_position + 1); | 5339 log_position + 1); |
5335 | 5340 |
5336 ASSERT_LT(log_position, entries.size()); | 5341 ASSERT_LT(log_position, entries.size()); |
5337 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5342 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, entries[log_position].type); |
5338 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5343 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5339 | 5344 |
5340 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5345 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5341 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5346 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5342 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5347 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5343 entries, log_position + 1, NetLog::TYPE_URL_REQUEST_DELEGATE)); | 5348 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE)); |
5344 } | 5349 } |
5345 #endif // !defined(OS_IOS) | 5350 #endif // !defined(OS_IOS) |
5346 | 5351 |
5347 // Tests handling of delegate info from a URLRequest::Delegate in the case of | 5352 // Tests handling of delegate info from a URLRequest::Delegate in the case of |
5348 // an HTTP redirect. | 5353 // an HTTP redirect. |
5349 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfoOnRedirect) { | 5354 TEST_F(URLRequestTestHTTP, URLRequestDelegateInfoOnRedirect) { |
5350 ASSERT_TRUE(http_test_server()->Start()); | 5355 ASSERT_TRUE(http_test_server()->Start()); |
5351 | 5356 |
5352 AsyncLoggingUrlRequestDelegate request_delegate( | 5357 AsyncLoggingUrlRequestDelegate request_delegate( |
5353 AsyncLoggingUrlRequestDelegate::NO_CANCEL); | 5358 AsyncLoggingUrlRequestDelegate::NO_CANCEL); |
(...skipping 17 matching lines...) Expand all Loading... |
5371 TestNetLogEntry::List entries; | 5376 TestNetLogEntry::List entries; |
5372 net_log_.GetEntries(&entries); | 5377 net_log_.GetEntries(&entries); |
5373 | 5378 |
5374 // Delegate info should only have been logged in OnReceivedRedirect and | 5379 // Delegate info should only have been logged in OnReceivedRedirect and |
5375 // OnResponseStarted. | 5380 // OnResponseStarted. |
5376 size_t log_position = 0; | 5381 size_t log_position = 0; |
5377 for (int i = 0; i < 2; ++i) { | 5382 for (int i = 0; i < 2; ++i) { |
5378 log_position = ExpectLogContainsSomewhereAfter( | 5383 log_position = ExpectLogContainsSomewhereAfter( |
5379 entries, | 5384 entries, |
5380 log_position, | 5385 log_position, |
5381 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5386 NetLogEventType::URL_REQUEST_DELEGATE, |
5382 NetLog::PHASE_BEGIN); | 5387 NetLogEventPhase::BEGIN); |
5383 | 5388 |
5384 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5389 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5385 log_position + 1); | 5390 log_position + 1); |
5386 | 5391 |
5387 ASSERT_LT(log_position, entries.size()); | 5392 ASSERT_LT(log_position, entries.size()); |
5388 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5393 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, |
5389 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5394 entries[log_position].type); |
| 5395 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5390 } | 5396 } |
5391 | 5397 |
5392 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5398 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5393 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5399 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5394 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5400 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5395 entries, log_position + 1, NetLog::TYPE_URL_REQUEST_DELEGATE)); | 5401 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE)); |
5396 } | 5402 } |
5397 | 5403 |
5398 // Tests handling of delegate info from a URLRequest::Delegate in the case of | 5404 // Tests handling of delegate info from a URLRequest::Delegate in the case of |
5399 // an HTTP redirect, with cancellation at various points. | 5405 // an HTTP redirect, with cancellation at various points. |
5400 TEST_F(URLRequestTestHTTP, URLRequestDelegateOnRedirectCancelled) { | 5406 TEST_F(URLRequestTestHTTP, URLRequestDelegateOnRedirectCancelled) { |
5401 ASSERT_TRUE(http_test_server()->Start()); | 5407 ASSERT_TRUE(http_test_server()->Start()); |
5402 | 5408 |
5403 const AsyncLoggingUrlRequestDelegate::CancelStage kCancelStages[] = { | 5409 const AsyncLoggingUrlRequestDelegate::CancelStage kCancelStages[] = { |
5404 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RECEIVED_REDIRECT, | 5410 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RECEIVED_REDIRECT, |
5405 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RESPONSE_STARTED, | 5411 AsyncLoggingUrlRequestDelegate::CANCEL_ON_RESPONSE_STARTED, |
(...skipping 24 matching lines...) Expand all Loading... |
5430 | 5436 |
5431 // Delegate info is always logged in both OnReceivedRedirect and | 5437 // Delegate info is always logged in both OnReceivedRedirect and |
5432 // OnResponseStarted. In the CANCEL_ON_RECEIVED_REDIRECT, the | 5438 // OnResponseStarted. In the CANCEL_ON_RECEIVED_REDIRECT, the |
5433 // OnResponseStarted delegate call is after cancellation, but logging is | 5439 // OnResponseStarted delegate call is after cancellation, but logging is |
5434 // still currently supported in that call. | 5440 // still currently supported in that call. |
5435 size_t log_position = 0; | 5441 size_t log_position = 0; |
5436 for (int i = 0; i < 2; ++i) { | 5442 for (int i = 0; i < 2; ++i) { |
5437 log_position = ExpectLogContainsSomewhereAfter( | 5443 log_position = ExpectLogContainsSomewhereAfter( |
5438 entries, | 5444 entries, |
5439 log_position, | 5445 log_position, |
5440 NetLog::TYPE_URL_REQUEST_DELEGATE, | 5446 NetLogEventType::URL_REQUEST_DELEGATE, |
5441 NetLog::PHASE_BEGIN); | 5447 NetLogEventPhase::BEGIN); |
5442 | 5448 |
5443 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, | 5449 log_position = AsyncDelegateLogger::CheckDelegateInfo(entries, |
5444 log_position + 1); | 5450 log_position + 1); |
5445 | 5451 |
5446 ASSERT_LT(log_position, entries.size()); | 5452 ASSERT_LT(log_position, entries.size()); |
5447 EXPECT_EQ(NetLog::TYPE_URL_REQUEST_DELEGATE, entries[log_position].type); | 5453 EXPECT_EQ(NetLogEventType::URL_REQUEST_DELEGATE, |
5448 EXPECT_EQ(NetLog::PHASE_END, entries[log_position].phase); | 5454 entries[log_position].type); |
| 5455 EXPECT_EQ(NetLogEventPhase::END, entries[log_position].phase); |
5449 } | 5456 } |
5450 | 5457 |
5451 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5458 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5452 entries, log_position + 1, NetLog::TYPE_DELEGATE_INFO)); | 5459 entries, log_position + 1, NetLogEventType::DELEGATE_INFO)); |
5453 EXPECT_FALSE(LogContainsEntryWithTypeAfter( | 5460 EXPECT_FALSE(LogContainsEntryWithTypeAfter( |
5454 entries, log_position + 1, NetLog::TYPE_URL_REQUEST_DELEGATE)); | 5461 entries, log_position + 1, NetLogEventType::URL_REQUEST_DELEGATE)); |
5455 } | 5462 } |
5456 } | 5463 } |
5457 | 5464 |
5458 namespace { | 5465 namespace { |
5459 | 5466 |
5460 const char kExtraHeader[] = "Allow-Snafu"; | 5467 const char kExtraHeader[] = "Allow-Snafu"; |
5461 const char kExtraValue[] = "fubar"; | 5468 const char kExtraValue[] = "fubar"; |
5462 | 5469 |
5463 class RedirectWithAdditionalHeadersDelegate : public TestDelegate { | 5470 class RedirectWithAdditionalHeadersDelegate : public TestDelegate { |
5464 void OnReceivedRedirect(URLRequest* request, | 5471 void OnReceivedRedirect(URLRequest* request, |
(...skipping 4787 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
10252 AddTestInterceptor()->set_main_intercept_job(std::move(job)); | 10259 AddTestInterceptor()->set_main_intercept_job(std::move(job)); |
10253 | 10260 |
10254 req->Start(); | 10261 req->Start(); |
10255 req->Cancel(); | 10262 req->Cancel(); |
10256 base::RunLoop().RunUntilIdle(); | 10263 base::RunLoop().RunUntilIdle(); |
10257 EXPECT_EQ(URLRequestStatus::CANCELED, req->status().status()); | 10264 EXPECT_EQ(URLRequestStatus::CANCELED, req->status().status()); |
10258 EXPECT_EQ(0, d.received_redirect_count()); | 10265 EXPECT_EQ(0, d.received_redirect_count()); |
10259 } | 10266 } |
10260 | 10267 |
10261 } // namespace net | 10268 } // namespace net |
OLD | NEW |