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

Unified Diff: webkit/support/weburl_loader_mock_factory.cc

Issue 23526028: Move source files from webkit/support to content/test (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixes Created 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webkit/support/weburl_loader_mock_factory.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/support/weburl_loader_mock_factory.cc
diff --git a/webkit/support/weburl_loader_mock_factory.cc b/webkit/support/weburl_loader_mock_factory.cc
deleted file mode 100644
index f459211f0152cb491dae1a0ede8a772824e445ac..0000000000000000000000000000000000000000
--- a/webkit/support/weburl_loader_mock_factory.cc
+++ /dev/null
@@ -1,192 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "webkit/support/weburl_loader_mock_factory.h"
-
-#include "base/file_util.h"
-#include "base/logging.h"
-#include "base/run_loop.h"
-#include "third_party/WebKit/public/platform/WebString.h"
-#include "third_party/WebKit/public/platform/WebURLError.h"
-#include "third_party/WebKit/public/platform/WebURLRequest.h"
-#include "third_party/WebKit/public/platform/WebURLResponse.h"
-#include "third_party/WebKit/public/web/WebCache.h"
-#include "webkit/support/webkit_support.h"
-#include "webkit/support/weburl_loader_mock.h"
-
-using WebKit::WebCache;
-using WebKit::WebData;
-using WebKit::WebString;
-using WebKit::WebURL;
-using WebKit::WebURLError;
-using WebKit::WebURLLoader;
-using WebKit::WebURLRequest;
-using WebKit::WebURLResponse;
-
-WebURLLoaderMockFactory::WebURLLoaderMockFactory() {}
-
-WebURLLoaderMockFactory::~WebURLLoaderMockFactory() {}
-
-void WebURLLoaderMockFactory::RegisterURL(const WebURL& url,
- const WebURLResponse& response,
- const WebString& file_path) {
- ResponseInfo response_info;
- response_info.response = response;
- if (!file_path.isNull() && !file_path.isEmpty()) {
-#if defined(OS_POSIX)
- // TODO(jcivelli): On Linux, UTF8 might not be correct.
- response_info.file_path =
- base::FilePath(static_cast<std::string>(file_path.utf8()));
-#elif defined(OS_WIN)
- string16 file_path_16 = file_path;
- response_info.file_path = base::FilePath(std::wstring(
- file_path_16.data(), file_path_16.length()));
-#endif
- DCHECK(base::PathExists(response_info.file_path))
- << response_info.file_path.MaybeAsASCII() << " does not exist.";
- }
-
- DCHECK(url_to_reponse_info_.find(url) == url_to_reponse_info_.end());
- url_to_reponse_info_[url] = response_info;
-}
-
-
-void WebURLLoaderMockFactory::RegisterErrorURL(const WebURL& url,
- const WebURLResponse& response,
- const WebURLError& error) {
- DCHECK(url_to_reponse_info_.find(url) == url_to_reponse_info_.end());
- RegisterURL(url, response, WebString());
- url_to_error_info_[url] = error;
-}
-
-void WebURLLoaderMockFactory::UnregisterURL(const WebKit::WebURL& url) {
- URLToResponseMap::iterator iter = url_to_reponse_info_.find(url);
- DCHECK(iter != url_to_reponse_info_.end());
- url_to_reponse_info_.erase(iter);
-
- URLToErrorMap::iterator error_iter = url_to_error_info_.find(url);
- if (error_iter != url_to_error_info_.end())
- url_to_error_info_.erase(error_iter);
-}
-
-void WebURLLoaderMockFactory::UnregisterAllURLs() {
- url_to_reponse_info_.clear();
- url_to_error_info_.clear();
- WebCache::clear();
-}
-
-void WebURLLoaderMockFactory::ServeAsynchronousRequests() {
- last_handled_asynchronous_request_.reset();
- // Serving a request might trigger more requests, so we cannot iterate on
- // pending_loaders_ as it might get modified.
- while (!pending_loaders_.empty()) {
- LoaderToRequestMap::iterator iter = pending_loaders_.begin();
- WebURLLoaderMock* loader = iter->first;
- const WebURLRequest& request = iter->second;
- WebURLResponse response;
- WebURLError error;
- WebData data;
- last_handled_asynchronous_request_ = request;
- LoadRequest(request, &response, &error, &data);
- // Follow any redirects while the loader is still active.
- while (response.httpStatusCode() >= 300 &&
- response.httpStatusCode() < 400) {
- WebURLRequest newRequest = loader->ServeRedirect(response);
- if (!IsPending(loader) || loader->isDeferred())
- break;
- last_handled_asynchronous_request_ = newRequest;
- LoadRequest(newRequest, &response, &error, &data);
- }
- // Serve the request if the loader is still active.
- if (IsPending(loader) && !loader->isDeferred())
- loader->ServeAsynchronousRequest(response, data, error);
- // The loader might have already been removed.
- pending_loaders_.erase(loader);
- }
- base::RunLoop().RunUntilIdle();
-}
-
-WebKit::WebURLRequest
-WebURLLoaderMockFactory::GetLastHandledAsynchronousRequest() {
- return last_handled_asynchronous_request_;
-}
-
-bool WebURLLoaderMockFactory::IsMockedURL(const WebKit::WebURL& url) {
- return url_to_reponse_info_.find(url) != url_to_reponse_info_.end();
-}
-
-void WebURLLoaderMockFactory::CancelLoad(WebURLLoaderMock* loader) {
- LoaderToRequestMap::iterator iter = pending_loaders_.find(loader);
- DCHECK(iter != pending_loaders_.end());
- pending_loaders_.erase(iter);
-}
-
-WebURLLoader* WebURLLoaderMockFactory::CreateURLLoader(
- WebURLLoader* default_loader) {
- DCHECK(default_loader);
- return new WebURLLoaderMock(this, default_loader);
-}
-
-void WebURLLoaderMockFactory::LoadSynchronously(const WebURLRequest& request,
- WebURLResponse* response,
- WebURLError* error,
- WebData* data) {
- LoadRequest(request, response, error, data);
-}
-
-void WebURLLoaderMockFactory::LoadAsynchronouly(const WebURLRequest& request,
- WebURLLoaderMock* loader) {
- LoaderToRequestMap::iterator iter = pending_loaders_.find(loader);
- DCHECK(iter == pending_loaders_.end());
- pending_loaders_[loader] = request;
-}
-
-void WebURLLoaderMockFactory::LoadRequest(const WebURLRequest& request,
- WebURLResponse* response,
- WebURLError* error,
- WebData* data) {
- URLToErrorMap::const_iterator error_iter =
- url_to_error_info_.find(request.url());
- if (error_iter != url_to_error_info_.end())
- *error = error_iter->second;
-
- URLToResponseMap::const_iterator iter =
- url_to_reponse_info_.find(request.url());
- if (iter == url_to_reponse_info_.end()) {
- // Non mocked URLs should not have been passed to the default URLLoader.
- NOTREACHED();
- return;
- }
-
- if (!error->reason && !ReadFile(iter->second.file_path, data)) {
- NOTREACHED();
- return;
- }
-
- *response = iter->second.response;
-}
-
-bool WebURLLoaderMockFactory::IsPending(WebURLLoaderMock* loader) {
- LoaderToRequestMap::iterator iter = pending_loaders_.find(loader);
- return iter != pending_loaders_.end();
-}
-
-// static
-bool WebURLLoaderMockFactory::ReadFile(const base::FilePath& file_path,
- WebData* data) {
- int64 file_size = 0;
- if (!file_util::GetFileSize(file_path, &file_size))
- return false;
-
- int size = static_cast<int>(file_size);
- scoped_ptr<char[]> buffer(new char[size]);
- data->reset();
- int read_count = file_util::ReadFile(file_path, buffer.get(), size);
- if (read_count == -1)
- return false;
- DCHECK(read_count == size);
- data->assign(buffer.get(), size);
-
- return true;
-}
« no previous file with comments | « webkit/support/weburl_loader_mock_factory.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698