// content/common/renderer_host.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 CONTENT_COMMON_RENDERER_HOST_MOJOM_TEST_UTILS_H_
#define CONTENT_COMMON_RENDERER_HOST_MOJOM_TEST_UTILS_H_

#include "content/common/renderer_host.mojom.h"
#include "content/common/content_export.h"


namespace content::mojom {


class CONTENT_EXPORT RendererHostInterceptorForTesting : public RendererHost {
  virtual RendererHost* GetForwardingInterface() = 0;
  void GetBrowserHistogram(const std::string& name, GetBrowserHistogramCallback callback) override;
  void SuddenTerminationAllowedChanged(bool allowed) override;
  void RecordUserMetricsAction(const std::string& action) override;
  void SetPrivateMemoryFootprint(uint64_t private_memory_footprint_bytes) override;
  void HasGpuProcess(HasGpuProcessCallback callback) override;
};
class CONTENT_EXPORT RendererHostAsyncWaiter {
 public:
  explicit RendererHostAsyncWaiter(RendererHost* proxy);

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

  ~RendererHostAsyncWaiter();
  void GetBrowserHistogram(
      const std::string& name, std::string* out_histogram_json);
  std::string GetBrowserHistogram(const std::string& name);
  void HasGpuProcess(
      bool* out_has_gpu_process);
  bool HasGpuProcess();

 private:
  RendererHost* const proxy_;
};




}  // content::mojom

#endif  // CONTENT_COMMON_RENDERER_HOST_MOJOM_TEST_UTILS_H_