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

Side by Side Diff: net/test/embedded_test_server/embedded_test_server.cc

Issue 1905873002: Add content_browsertests for testing cache control flags (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review #13 Created 4 years, 7 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 "net/test/embedded_test_server/embedded_test_server.h" 5 #include "net/test/embedded_test_server/embedded_test_server.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/files/file_path.h" 10 #include "base/files/file_path.h"
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 listen_socket_.reset(); 163 listen_socket_.reset();
164 STLDeleteContainerPairSecondPointers(connections_.begin(), 164 STLDeleteContainerPairSecondPointers(connections_.begin(),
165 connections_.end()); 165 connections_.end());
166 connections_.clear(); 166 connections_.clear();
167 } 167 }
168 168
169 void EmbeddedTestServer::HandleRequest(HttpConnection* connection, 169 void EmbeddedTestServer::HandleRequest(HttpConnection* connection,
170 std::unique_ptr<HttpRequest> request) { 170 std::unique_ptr<HttpRequest> request) {
171 DCHECK(io_thread_->task_runner()->BelongsToCurrentThread()); 171 DCHECK(io_thread_->task_runner()->BelongsToCurrentThread());
172 172
173 for (const auto& handler : request_monitors_)
Paweł Hajdan Jr. 2016/05/13 10:37:08 nit: Since we differentiate between handlers and m
Takashi Toyoshima 2016/05/18 03:56:37 Done.
174 handler.Run(*request);
175
173 std::unique_ptr<HttpResponse> response; 176 std::unique_ptr<HttpResponse> response;
174 177
175 for (const auto& handler : request_handlers_) { 178 for (const auto& handler : request_handlers_) {
176 response = handler.Run(*request); 179 response = handler.Run(*request);
177 if (response) 180 if (response)
178 break; 181 break;
179 } 182 }
180 183
181 if (!response) { 184 if (!response) {
182 for (const auto& handler : default_request_handlers_) { 185 for (const auto& handler : default_request_handlers_) {
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 ServeFilesFromDirectory(test_data_dir.Append(relative)); 280 ServeFilesFromDirectory(test_data_dir.Append(relative));
278 } 281 }
279 282
280 void EmbeddedTestServer::AddDefaultHandlers(const base::FilePath& directory) { 283 void EmbeddedTestServer::AddDefaultHandlers(const base::FilePath& directory) {
281 RegisterDefaultHandlers(this); 284 RegisterDefaultHandlers(this);
282 ServeFilesFromSourceDirectory(directory); 285 ServeFilesFromSourceDirectory(directory);
283 } 286 }
284 287
285 void EmbeddedTestServer::RegisterRequestHandler( 288 void EmbeddedTestServer::RegisterRequestHandler(
286 const HandleRequestCallback& callback) { 289 const HandleRequestCallback& callback) {
287 // TODO(svaldez): Add check to prevent RegisterHandler from being called 290 // TODO(svaldez): Add check to prevent RegisterRequestHandler from being
288 // after the server has started. https://crbug.com/546060 291 // called after the server has started. https://crbug.com/546060
289 request_handlers_.push_back(callback); 292 request_handlers_.push_back(callback);
290 } 293 }
291 294
295 void EmbeddedTestServer::RegisterRequestMonitor(
296 const MonitorRequestCallback& callback) {
297 // TODO(svaldez): Add check to prevent RegisterRequestMonitor from being
298 // called after the server has started. https://crbug.com/546060
299 request_monitors_.push_back(callback);
300 }
301
292 void EmbeddedTestServer::RegisterDefaultHandler( 302 void EmbeddedTestServer::RegisterDefaultHandler(
293 const HandleRequestCallback& callback) { 303 const HandleRequestCallback& callback) {
294 // TODO(svaldez): Add check to prevent RegisterHandler from being called 304 // TODO(svaldez): Add check to prevent RegisterDefaultHandler from being
295 // after the server has started. https://crbug.com/546060 305 // called after the server has started. https://crbug.com/546060
296 default_request_handlers_.push_back(callback); 306 default_request_handlers_.push_back(callback);
297 } 307 }
298 308
299 std::unique_ptr<StreamSocket> EmbeddedTestServer::DoSSLUpgrade( 309 std::unique_ptr<StreamSocket> EmbeddedTestServer::DoSSLUpgrade(
300 std::unique_ptr<StreamSocket> connection) { 310 std::unique_ptr<StreamSocket> connection) {
301 DCHECK(io_thread_->task_runner()->BelongsToCurrentThread()); 311 DCHECK(io_thread_->task_runner()->BelongsToCurrentThread());
302 312
303 return context_->CreateSSLServerSocket(std::move(connection)); 313 return context_->CreateSSLServerSocket(std::move(connection));
304 } 314 }
305 315
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after
430 run_loop.QuitClosure())) { 440 run_loop.QuitClosure())) {
431 return false; 441 return false;
432 } 442 }
433 run_loop.Run(); 443 run_loop.Run();
434 444
435 return true; 445 return true;
436 } 446 }
437 447
438 } // namespace test_server 448 } // namespace test_server
439 } // namespace net 449 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698