blob: 330a924ea9f3d361981abc6373470804734d6093 [file] [log] [blame]
// content/shell/common/shell_controller.test-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_SHELL_COMMON_SHELL_CONTROLLER_TEST_MOJOM_TEST_UTILS_H_
#define CONTENT_SHELL_COMMON_SHELL_CONTROLLER_TEST_MOJOM_TEST_UTILS_H_
#include "content/shell/common/shell_controller.test-mojom.h"
namespace content::mojom {
class ShellControllerInterceptorForTesting : public ShellController {
virtual ShellController* GetForwardingInterface() = 0;
void GetSwitchValue(const std::string& name, GetSwitchValueCallback callback) override;
void ExecuteJavaScript(const ::std::u16string& script, ExecuteJavaScriptCallback callback) override;
void ShutDown() override;
};
class ShellControllerAsyncWaiter {
public:
explicit ShellControllerAsyncWaiter(ShellController* proxy);
ShellControllerAsyncWaiter(const ShellControllerAsyncWaiter&) = delete;
ShellControllerAsyncWaiter& operator=(const ShellControllerAsyncWaiter&) = delete;
~ShellControllerAsyncWaiter();
void GetSwitchValue(
const std::string& name, std::optional<std::string>* out_value);
std::optional<std::string> GetSwitchValue(const std::string& name);
void ExecuteJavaScript(
const ::std::u16string& script, ::base::Value* out_value);
::base::Value ExecuteJavaScript(const ::std::u16string& script);
private:
ShellController* const proxy_;
};
} // content::mojom
#endif // CONTENT_SHELL_COMMON_SHELL_CONTROLLER_TEST_MOJOM_TEST_UTILS_H_