blob: 58c8bf2b6a3069de701224b9057e070d08b43ea1 [file] [log] [blame]
// Copyright 2019 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CONTENT_COMMON_RENDERER_MOJOM_TEST_UTILS_H_
#define CONTENT_COMMON_RENDERER_MOJOM_TEST_UTILS_H_
#include "content/common/renderer.mojom.h"
#include "content/common/content_export.h"
namespace content {
namespace mojom {
class CONTENT_EXPORT RendererInterceptorForTesting : public Renderer {
virtual Renderer* GetForwardingInterface() = 0;
void CreateEmbedderRendererService(::service_manager::mojom::ServiceRequest service_request) override;
void CreateView(CreateViewParamsPtr params) override;
void CreateFrame(CreateFrameParamsPtr params) override;
void CreateFrameProxy(int32_t routing_id, int32_t render_view_routing_id, int32_t opener_routing_id, int32_t parent_routing_id, const content::FrameReplicationState& replication_state, const base::UnguessableToken& devtools_frame_token) override;
void SetUpEmbeddedWorkerChannelForServiceWorker(::blink::mojom::EmbeddedWorkerInstanceClientRequest client_request) override;
void OnNetworkConnectionChanged(net::NetworkChangeNotifier::ConnectionType connection_type, double max_bandwidth_mbps) override;
void OnNetworkQualityChanged(net::EffectiveConnectionType effective_connection_type, base::TimeDelta http_rtt, base::TimeDelta transport_rtt, double bandwidth_kbps) override;
void SetWebKitSharedTimersSuspended(bool suspend) override;
void SetUserAgent(const std::string& user_agent) override;
void SetUserAgentMetadata(const blink::UserAgentMetadata& metadata) override;
void UpdateScrollbarTheme(UpdateScrollbarThemeParamsPtr params) override;
void OnSystemColorsChanged(int32_t aqua_color_variant, const std::string& highlight_text_color, const std::string& highlight_color) override;
void PurgePluginListCache(bool reload_pages) override;
void SetProcessState(RenderProcessState process_state) override;
void SetSchedulerKeepActive(bool keep_active) override;
void SetIsLockedToSite() override;
void EnableV8LowMemoryMode() override;
};
class CONTENT_EXPORT RendererAsyncWaiter {
public:
explicit RendererAsyncWaiter(Renderer* proxy);
~RendererAsyncWaiter();
private:
Renderer* const proxy_;
DISALLOW_COPY_AND_ASSIGN(RendererAsyncWaiter);
};
} // namespace mojom
} // namespace content
#endif // CONTENT_COMMON_RENDERER_MOJOM_TEST_UTILS_H_