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

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: Fixed a straggling, old enum and applied static_cast<int> to the new netlog enum types, since this … 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
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 239 matching lines...) Expand 10 before | Expand all | Expand 10 after
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
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
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
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
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
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
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
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
OLDNEW
« net/socket/tcp_socket_win.cc ('K') | « 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