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

Unified Diff: net/url_request/url_request_test_job.h

Issue 992733002: Remove //net (except for Android test stuff) and sdch (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 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 | « net/url_request/url_request_status.h ('k') | net/url_request/url_request_test_job.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/url_request/url_request_test_job.h
diff --git a/net/url_request/url_request_test_job.h b/net/url_request/url_request_test_job.h
deleted file mode 100644
index fbdbe0fe06d3f0fcf1590f83fae8d0a976932e8e..0000000000000000000000000000000000000000
--- a/net/url_request/url_request_test_job.h
+++ /dev/null
@@ -1,172 +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.
-
-#ifndef NET_URL_REQUEST_URL_REQUEST_TEST_JOB_H_
-#define NET_URL_REQUEST_URL_REQUEST_TEST_JOB_H_
-
-#include <string>
-
-#include "base/memory/weak_ptr.h"
-#include "net/base/load_timing_info.h"
-#include "net/url_request/url_request.h"
-#include "net/url_request/url_request_job.h"
-#include "net/url_request/url_request_job_factory.h"
-
-namespace net {
-
-// This job type is designed to help with simple unit tests. To use, you
-// probably want to inherit from it to set up the state you want. Then install
-// it as the protocol handler for the "test" scheme.
-//
-// It will respond to several URLs, which you can retrieve using the test_url*
-// getters, which will in turn respond with the corresponding responses returned
-// by test_data*. Any other URLs that begin with "test:" will return an error,
-// which might also be useful, you can use test_url_error() to retreive a
-// standard one.
-//
-// You can override the known URLs or the response data by overriding Start().
-//
-// Optionally, you can also construct test jobs to return a headers and data
-// provided to the contstructor in response to any request url.
-//
-// When a job is created, it gets put on a queue of pending test jobs. To
-// process jobs on this queue, use ProcessOnePendingMessage, which will process
-// one step of the next job. If the job is incomplete, it will be added to the
-// end of the queue.
-//
-// Optionally, you can also construct test jobs that advance automatically
-// without having to call ProcessOnePendingMessage.
-class NET_EXPORT_PRIVATE URLRequestTestJob : public URLRequestJob {
- public:
- // Constructs a job to return one of the canned responses depending on the
- // request url, with auto advance disabled.
- URLRequestTestJob(URLRequest* request, NetworkDelegate* network_delegate);
-
- // Constructs a job to return one of the canned responses depending on the
- // request url, optionally with auto advance enabled.
- URLRequestTestJob(URLRequest* request,
- NetworkDelegate* network_delegate,
- bool auto_advance);
-
- // Constructs a job to return the given response regardless of the request
- // url. The headers should include the HTTP status line and be formatted as
- // expected by HttpResponseHeaders.
- URLRequestTestJob(URLRequest* request,
- net::NetworkDelegate* network_delegate,
- const std::string& response_headers,
- const std::string& response_data,
- bool auto_advance);
-
- // The canned URLs this handler will respond to without having been
- // explicitly initialized with response headers and data.
- // FIXME(brettw): we should probably also have a redirect one
- static GURL test_url_1();
- static GURL test_url_2();
- static GURL test_url_3();
- static GURL test_url_4();
- static GURL test_url_error();
- static GURL test_url_redirect_to_url_2();
-
- // The data that corresponds to each of the URLs above
- static std::string test_data_1();
- static std::string test_data_2();
- static std::string test_data_3();
- static std::string test_data_4();
-
- // The headers that correspond to each of the URLs above
- static std::string test_headers();
-
- // The headers for a redirect response
- static std::string test_redirect_headers();
-
- // The headers for a redirect response to the second test url.
- static std::string test_redirect_to_url_2_headers();
-
- // The headers for a server error response
- static std::string test_error_headers();
-
- // Processes one pending message from the stack, returning true if any
- // message was processed, or false if there are no more pending request
- // notifications to send. This is not applicable when using auto_advance.
- static bool ProcessOnePendingMessage();
-
- // With auto advance enabled, the job will advance thru the stages without
- // the caller having to call ProcessOnePendingMessage. Auto advance depends
- // on having a message loop running. The default is to not auto advance.
- // Should not be altered after the job has started.
- bool auto_advance() { return auto_advance_; }
- void set_auto_advance(bool auto_advance) { auto_advance_ = auto_advance; }
-
- void set_load_timing_info(const LoadTimingInfo& load_timing_info) {
- load_timing_info_ = load_timing_info;
- }
-
- RequestPriority priority() const { return priority_; }
-
- // Create a protocol handler for callers that don't subclass.
- static URLRequestJobFactory::ProtocolHandler* CreateProtocolHandler();
-
- // Job functions
- void SetPriority(RequestPriority priority) override;
- void Start() override;
- bool ReadRawData(IOBuffer* buf, int buf_size, int* bytes_read) override;
- void Kill() override;
- bool GetMimeType(std::string* mime_type) const override;
- void GetResponseInfo(HttpResponseInfo* info) override;
- void GetLoadTimingInfo(LoadTimingInfo* load_timing_info) const override;
- int GetResponseCode() const override;
- bool IsRedirectResponse(GURL* location, int* http_status_code) override;
-
- protected:
- // Override to specify whether the next read done from this job will
- // return IO pending. This controls whether or not the WAITING state will
- // transition back to WAITING or to DATA_AVAILABLE after an asynchronous
- // read is processed.
- virtual bool NextReadAsync();
-
- // This is what operation we are going to do next when this job is handled.
- // When the stage is DONE, this job will not be put on the queue.
- enum Stage { WAITING, DATA_AVAILABLE, ALL_DATA, DONE };
-
- ~URLRequestTestJob() override;
-
- // Call to process the next opeation, usually sending a notification, and
- // advancing the stage if necessary. THIS MAY DELETE THE OBJECT.
- void ProcessNextOperation();
-
- // Call to move the job along to the next operation.
- void AdvanceJob();
-
- // Called via InvokeLater to cause callbacks to occur after Start() returns.
- virtual void StartAsync();
-
- bool auto_advance_;
-
- Stage stage_;
-
- RequestPriority priority_;
-
- // The headers the job should return, will be set in Start() if not provided
- // in the explicit ctor.
- scoped_refptr<HttpResponseHeaders> response_headers_;
-
- // The data to send, will be set in Start() if not provided in the explicit
- // ctor.
- std::string response_data_;
-
- // current offset within response_data_
- int offset_;
-
- // Holds the buffer for an asynchronous ReadRawData call
- IOBuffer* async_buf_;
- int async_buf_size_;
-
- LoadTimingInfo load_timing_info_;
-
- base::WeakPtrFactory<URLRequestTestJob> weak_factory_;
-};
-
-} // namespace net
-
-#endif // NET_URL_REQUEST_URL_REQUEST_TEST_JOB_H_
« no previous file with comments | « net/url_request/url_request_status.h ('k') | net/url_request/url_request_test_job.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698