#include "third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader.h"
#include <stdint.h>
#include <string.h>
#include <string_view>
#include <utility>
#include <vector>
#include "base/command_line.h"
#include "base/memory/ptr_util.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/weak_ptr.h"
#include "base/run_loop.h"
#include "base/task/single_thread_task_runner.h"
#include "base/test/task_environment.h"
#include "base/time/default_tick_clock.h"
#include "base/time/time.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/system/data_pipe.h"
#include "net/base/host_port_pair.h"
#include "net/base/ip_endpoint.h"
#include "net/base/net_errors.h"
#include "net/cert/x509_util.h"
#include "net/http/http_response_headers.h"
#include "net/http/http_util.h"
#include "net/ssl/ssl_connection_status_flags.h"
#include "net/test/cert_test_util.h"
#include "net/traffic_annotation/network_traffic_annotation_test_helper.h"
#include "net/url_request/redirect_info.h"
#include "services/network/public/cpp/resource_request.h"
#include "services/network/public/cpp/weak_wrapper_shared_url_loader_factory.h"
#include "services/network/public/mojom/encoded_body_length.mojom-forward.h"
#include "services/network/public/mojom/encoded_body_length.mojom.h"
#include "services/network/public/mojom/fetch_api.mojom-shared.h"
#include "services/network/public/mojom/url_loader_completion_status.mojom.h"
#include "services/network/public/mojom/url_response_head.mojom.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/abseil-cpp/absl/types/variant.h"
#include "third_party/blink/public/platform/resource_load_info_notifier_wrapper.h"
#include "third_party/blink/public/platform/scheduler/test/renderer_scheduler_test_support.h"
#include "third_party/blink/public/platform/web_data.h"
#include "third_party/blink/public/platform/web_string.h"
#include "third_party/blink/public/platform/web_url.h"
#include "third_party/blink/public/platform/web_url_error.h"
#include "third_party/blink/public/platform/web_url_request.h"
#include "third_party/blink/public/platform/web_url_request_extra_data.h"
#include "third_party/blink/public/platform/web_url_response.h"
#include "third_party/blink/public/platform/web_vector.h"
#include "third_party/blink/renderer/platform/loader/fetch/loader_freeze_mode.h"
#include "third_party/blink/renderer/platform/loader/fetch/resource_response.h"
#include "third_party/blink/renderer/platform/loader/fetch/url_loader/resource_request_client.h"
#include "third_party/blink/renderer/platform/loader/fetch/url_loader/resource_request_sender.h"
#include "third_party/blink/renderer/platform/loader/fetch/url_loader/sync_load_response.h"
#include "third_party/blink/renderer/platform/loader/fetch/url_loader/url_loader_client.h"
#include "third_party/blink/renderer/platform/weborigin/kurl.h"
#include "third_party/blink/renderer/platform/wtf/functional.h"
#include "third_party/blink/renderer/platform/wtf/shared_buffer.h"
#include "url/gurl.h"
#include "url/origin.h"
namespace blink {
namespace {
const char kTestURL[] = …;
const char kTestData[] = …;
class MockResourceRequestSender : public ResourceRequestSender { … };
class FakeURLLoaderFactory final : public network::mojom::URLLoaderFactory { … };
class TestURLLoaderClient : public URLLoaderClient { … };
class URLLoaderTest : public testing::Test { … };
TEST_F(URLLoaderTest, Success) { … }
TEST_F(URLLoaderTest, Redirect) { … }
TEST_F(URLLoaderTest, Failure) { … }
TEST_F(URLLoaderTest, DeleteOnReceiveRedirect) { … }
TEST_F(URLLoaderTest, DeleteOnReceiveResponse) { … }
TEST_F(URLLoaderTest, DeleteOnFinish) { … }
TEST_F(URLLoaderTest, DeleteOnFail) { … }
TEST_F(URLLoaderTest, DefersLoadingBeforeStart) { … }
TEST_F(URLLoaderTest, ResponseIPEndpoint) { … }
TEST_F(URLLoaderTest, ResponseAddressSpace) { … }
TEST_F(URLLoaderTest, ClientAddressSpace) { … }
TEST_F(URLLoaderTest, SSLInfo) { … }
TEST_F(URLLoaderTest, SyncLengths) { … }
TEST_F(URLLoaderTest, AuthChallengeInfo) { … }
}
}