chromium/services/proxy_resolver/proxy_resolver_factory_impl_unittest.cc

// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#include "services/proxy_resolver/proxy_resolver_factory_impl.h"

#include <optional>
#include <utility>

#include "base/functional/bind.h"
#include "base/functional/callback_helpers.h"
#include "base/memory/raw_ptr.h"
#include "base/run_loop.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/task_environment.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "net/base/completion_once_callback.h"
#include "net/base/test_completion_callback.h"
#include "net/proxy_resolution/mock_proxy_resolver.h"
#include "net/proxy_resolution/proxy_resolve_dns_operation.h"
#include "net/test/event_waiter.h"
#include "net/test/gtest_util.h"
#include "services/proxy_resolver/proxy_resolver_v8_tracing.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"

IsError;
IsOk;

namespace proxy_resolver {
namespace {

const char kScriptData[] =;
const char16_t kScriptData16[] =;

class FakeProxyResolver : public ProxyResolverV8Tracing {};

enum Event {};

class TestProxyResolverFactory : public ProxyResolverV8TracingFactory {};

class TestProxyResolverFactoryImpl : public ProxyResolverFactoryImpl {};

}  // namespace

class ProxyResolverFactoryImplTest
    : public testing::Test,
      public mojom::ProxyResolverFactoryRequestClient {};

TEST_F(ProxyResolverFactoryImplTest, DisconnectProxyResolverClient) {}

// Same as above, but disconnect the factory right after the CreateResolver
// call, which should not prevent the request from succeeding.
TEST_F(ProxyResolverFactoryImplTest, DisconnectProxyResolverFactory) {}

TEST_F(ProxyResolverFactoryImplTest, Error) {}

TEST_F(ProxyResolverFactoryImplTest, DisconnectClientDuringResolverCreation) {}

}  // namespace proxy_resolver