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

Side by Side Diff: content/browser/loader/async_resource_handler_unittest.cc

Issue 2481093003: Introduce ResourceRequesterInfo to abstract the requester of resource request (Closed)
Patch Set: fix URLLoaderFactoryImplTest/URLLoaderFactoryImplTest.GetFailedResponse2 Created 4 years 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "content/browser/loader/async_resource_handler.h" 5 #include "content/browser/loader/async_resource_handler.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
(...skipping 15 matching lines...) Expand all
26 #include "content/browser/loader/resource_dispatcher_host_impl.h" 26 #include "content/browser/loader/resource_dispatcher_host_impl.h"
27 #include "content/browser/loader/resource_loader.h" 27 #include "content/browser/loader/resource_loader.h"
28 #include "content/browser/loader/resource_loader_delegate.h" 28 #include "content/browser/loader/resource_loader_delegate.h"
29 #include "content/browser/loader/resource_message_filter.h" 29 #include "content/browser/loader/resource_message_filter.h"
30 #include "content/browser/loader/resource_request_info_impl.h" 30 #include "content/browser/loader/resource_request_info_impl.h"
31 #include "content/common/resource_messages.h" 31 #include "content/common/resource_messages.h"
32 #include "content/common/resource_request.h" 32 #include "content/common/resource_request.h"
33 #include "content/public/browser/resource_context.h" 33 #include "content/public/browser/resource_context.h"
34 #include "content/public/browser/resource_request_info.h" 34 #include "content/public/browser/resource_request_info.h"
35 #include "content/public/common/content_features.h" 35 #include "content/public/common/content_features.h"
36 #include "content/public/common/process_type.h"
37 #include "content/public/common/resource_type.h" 36 #include "content/public/common/resource_type.h"
38 #include "content/public/test/mock_resource_context.h" 37 #include "content/public/test/mock_resource_context.h"
39 #include "content/public/test/test_browser_thread_bundle.h" 38 #include "content/public/test/test_browser_thread_bundle.h"
40 #include "ipc/ipc_message.h" 39 #include "ipc/ipc_message.h"
41 #include "ipc/ipc_message_macros.h" 40 #include "ipc/ipc_message_macros.h"
42 #include "net/http/http_response_headers.h" 41 #include "net/http/http_response_headers.h"
43 #include "net/http/http_util.h" 42 #include "net/http/http_util.h"
44 #include "net/ssl/client_cert_store.h" 43 #include "net/ssl/client_cert_store.h"
45 #include "net/url_request/url_request.h" 44 #include "net/url_request/url_request.h"
46 #include "net/url_request/url_request_context.h" 45 #include "net/url_request/url_request_context.h"
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 size_t response_data_size_; 88 size_t response_data_size_;
90 }; 89 };
91 90
92 // A subclass of ResourceMessageFilter that records IPC messages that are sent. 91 // A subclass of ResourceMessageFilter that records IPC messages that are sent.
93 class RecordingResourceMessageFilter : public ResourceMessageFilter { 92 class RecordingResourceMessageFilter : public ResourceMessageFilter {
94 public: 93 public:
95 RecordingResourceMessageFilter(ResourceContext* resource_context, 94 RecordingResourceMessageFilter(ResourceContext* resource_context,
96 net::URLRequestContext* request_context) 95 net::URLRequestContext* request_context)
97 : ResourceMessageFilter( 96 : ResourceMessageFilter(
98 0, 97 0,
99 PROCESS_TYPE_RENDERER,
100 nullptr, 98 nullptr,
101 nullptr, 99 nullptr,
102 nullptr, 100 nullptr,
103 nullptr, 101 nullptr,
104 base::Bind(&RecordingResourceMessageFilter::GetContexts, 102 base::Bind(&RecordingResourceMessageFilter::GetContexts,
105 base::Unretained(this))), 103 base::Unretained(this))),
106 resource_context_(resource_context), 104 resource_context_(resource_context),
107 request_context_(request_context) { 105 request_context_(request_context) {
106 InitializeForTest();
108 set_peer_process_for_testing(base::Process::Current()); 107 set_peer_process_for_testing(base::Process::Current());
109 } 108 }
110 109
111 const std::vector<std::unique_ptr<IPC::Message>>& messages() const { 110 const std::vector<std::unique_ptr<IPC::Message>>& messages() const {
112 return messages_; 111 return messages_;
113 } 112 }
114 113
115 // IPC::Sender implementation: 114 // IPC::Sender implementation:
116 bool Send(IPC::Message* message) override { 115 bool Send(IPC::Message* message) override {
117 // Unpickle the base::SharedMemoryHandle to avoid warnings about 116 // Unpickle the base::SharedMemoryHandle to avoid warnings about
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 test_job_factory_.SetProtocolHandler( 157 test_job_factory_.SetProtocolHandler(
159 "test", base::MakeUnique<TestProtocolHandler>(response_data_size)); 158 "test", base::MakeUnique<TestProtocolHandler>(response_data_size));
160 context_.set_job_factory(&test_job_factory_); 159 context_.set_job_factory(&test_job_factory_);
161 context_.Init(); 160 context_.Init();
162 std::unique_ptr<net::URLRequest> request = context_.CreateRequest( 161 std::unique_ptr<net::URLRequest> request = context_.CreateRequest(
163 GURL("test:test"), net::DEFAULT_PRIORITY, nullptr); 162 GURL("test:test"), net::DEFAULT_PRIORITY, nullptr);
164 resource_context_ = base::MakeUnique<MockResourceContext>(&context_); 163 resource_context_ = base::MakeUnique<MockResourceContext>(&context_);
165 filter_ = 164 filter_ =
166 new RecordingResourceMessageFilter(resource_context_.get(), &context_); 165 new RecordingResourceMessageFilter(resource_context_.get(), &context_);
167 ResourceRequestInfoImpl* info = new ResourceRequestInfoImpl( 166 ResourceRequestInfoImpl* info = new ResourceRequestInfoImpl(
168 PROCESS_TYPE_RENDERER, // process_type 167 filter_->requester_info_for_test(),
169 0, // child_id
170 0, // route_id 168 0, // route_id
171 -1, // frame_tree_node_id 169 -1, // frame_tree_node_id
172 0, // origin_pid 170 0, // origin_pid
173 0, // request_id 171 0, // request_id
174 0, // render_frame_id 172 0, // render_frame_id
175 false, // is_main_frame 173 false, // is_main_frame
176 false, // parent_is_main_frame 174 false, // parent_is_main_frame
177 RESOURCE_TYPE_IMAGE, // resource_type 175 RESOURCE_TYPE_IMAGE, // resource_type
178 ui::PAGE_TRANSITION_LINK, // transition_type 176 ui::PAGE_TRANSITION_LINK, // transition_type
179 false, // should_replace_current_entry 177 false, // should_replace_current_entry
180 false, // is_download 178 false, // is_download
181 false, // is_stream 179 false, // is_stream
182 false, // allow_download 180 false, // allow_download
183 false, // has_user_gesture 181 false, // has_user_gesture
184 false, // enable load timing 182 false, // enable load timing
185 false, // enable upload progress 183 false, // enable upload progress
186 false, // do_not_prompt_for_login 184 false, // do_not_prompt_for_login
187 blink::WebReferrerPolicyDefault, // referrer_policy 185 blink::WebReferrerPolicyDefault, // referrer_policy
188 blink::WebPageVisibilityStateVisible, // visibility_state 186 blink::WebPageVisibilityStateVisible, // visibility_state
189 resource_context_.get(), // context 187 resource_context_.get(), // context
190 filter_->GetWeakPtr(), // filter
191 false, // report_raw_headers 188 false, // report_raw_headers
192 true, // is_async 189 true, // is_async
193 false, // is_using_lofi 190 false, // is_using_lofi
194 std::string(), // original_headers 191 std::string(), // original_headers
195 nullptr, // body 192 nullptr, // body
196 false); // initiated_in_secure_context 193 false); // initiated_in_secure_context
197 info->AssociateWithRequest(request.get()); 194 info->AssociateWithRequest(request.get());
198 std::unique_ptr<AsyncResourceHandler> handler = 195 std::unique_ptr<AsyncResourceHandler> handler =
199 base::MakeUnique<AsyncResourceHandler>(request.get(), &rdh_); 196 base::MakeUnique<AsyncResourceHandler>(request.get(), &rdh_);
200 loader_ = base::MakeUnique<ResourceLoader>( 197 loader_ = base::MakeUnique<ResourceLoader>(
(...skipping 128 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 ResourceRequestCompletionStatus completion_status = 326 ResourceRequestCompletionStatus completion_status =
330 std::get<1>(completion_params); 327 std::get<1>(completion_params);
331 EXPECT_EQ(TotalReceivedBytes(kDataSize), 328 EXPECT_EQ(TotalReceivedBytes(kDataSize),
332 completion_status.encoded_data_length); 329 completion_status.encoded_data_length);
333 EXPECT_EQ(kDataSize, completion_status.encoded_body_length); 330 EXPECT_EQ(kDataSize, completion_status.encoded_body_length);
334 } 331 }
335 332
336 } // namespace 333 } // namespace
337 334
338 } // namespace content 335 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/loader/async_resource_handler.cc ('k') | content/browser/loader/async_revalidation_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698