// chrome/common/net_benchmarking.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 CHROME_COMMON_NET_BENCHMARKING_MOJOM_TEST_UTILS_H_
#define CHROME_COMMON_NET_BENCHMARKING_MOJOM_TEST_UTILS_H_

#include "chrome/common/net_benchmarking.mojom.h"


namespace chrome::mojom {


class  NetBenchmarkingInterceptorForTesting : public NetBenchmarking {
  virtual NetBenchmarking* GetForwardingInterface() = 0;
  void CloseCurrentConnections(CloseCurrentConnectionsCallback callback) override;
  void ClearCache(ClearCacheCallback callback) override;
  void ClearHostResolverCache(ClearHostResolverCacheCallback callback) override;
  void ClearPredictorCache(ClearPredictorCacheCallback callback) override;
};
class  NetBenchmarkingAsyncWaiter {
 public:
  explicit NetBenchmarkingAsyncWaiter(NetBenchmarking* proxy);

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

  ~NetBenchmarkingAsyncWaiter();
  void CloseCurrentConnections(
      );
  
  void ClearCache(
      );
  
  void ClearHostResolverCache(
      );
  
  void ClearPredictorCache(
      );
  

 private:
  NetBenchmarking* const proxy_;
};




}  // chrome::mojom

#endif  // CHROME_COMMON_NET_BENCHMARKING_MOJOM_TEST_UTILS_H_