// third_party/blink/public/mojom/websockets/websocket_connector.mojom-test-utils.h is auto generated by mojom_bindings_generator.py, do not edit

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

#ifndef THIRD_PARTY_BLINK_PUBLIC_MOJOM_WEBSOCKETS_WEBSOCKET_CONNECTOR_MOJOM_TEST_UTILS_H_
#define THIRD_PARTY_BLINK_PUBLIC_MOJOM_WEBSOCKETS_WEBSOCKET_CONNECTOR_MOJOM_TEST_UTILS_H_

#include "third_party/blink/public/mojom/websockets/websocket_connector.mojom.h"
#include "third_party/blink/public/common/common_export.h"


namespace blink::mojom {


class BLINK_COMMON_EXPORT WebSocketConnectorInterceptorForTesting : public WebSocketConnector {
  virtual WebSocketConnector* GetForwardingInterface() = 0;
  void Connect(const ::GURL& url, const std::vector<std::string>& requested_protocols, const std::optional<std::string>& user_agent, ::net::StorageAccessApiStatus storage_access_api_status, ::mojo::PendingRemote<::network::mojom::WebSocketHandshakeClient> handshake_client, const std::optional<::base::UnguessableToken>& throttling_profile_id, ::network::mojom::IPAddressSpace target_address_space) override;
};
class BLINK_COMMON_EXPORT WebSocketConnectorAsyncWaiter {
 public:
  explicit WebSocketConnectorAsyncWaiter(WebSocketConnector* proxy);

  WebSocketConnectorAsyncWaiter(const WebSocketConnectorAsyncWaiter&) = delete;
  WebSocketConnectorAsyncWaiter& operator=(const WebSocketConnectorAsyncWaiter&) = delete;

  ~WebSocketConnectorAsyncWaiter();

 private:
  WebSocketConnector* const proxy_;
};




}  // blink::mojom

#endif  // THIRD_PARTY_BLINK_PUBLIC_MOJOM_WEBSOCKETS_WEBSOCKET_CONNECTOR_MOJOM_TEST_UTILS_H_