blob: 0be7e9c514a352df83fcc981d240020e104133cc [file] [log] [blame]
// Copyright 2018 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 COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_WEB_MOCK_WEB_CONTROLLER_H_
#define COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_WEB_MOCK_WEB_CONTROLLER_H_
#include <string>
#include <vector>
#include "base/callback.h"
#include "components/autofill_assistant/browser/top_padding.h"
#include "components/autofill_assistant/browser/web/element_finder.h"
#include "components/autofill_assistant/browser/web/web_controller.h"
#include "testing/gmock/include/gmock/gmock.h"
namespace autofill_assistant {
struct RectF;
class MockWebController : public WebController {
public:
MockWebController();
~MockWebController() override;
MOCK_METHOD1(LoadURL, void(const GURL&));
void FindElement(const Selector& selector,
bool strict_mode,
ElementFinder::Callback callback) override {
OnFindElement(selector, callback);
}
MOCK_METHOD2(OnFindElement,
void(const Selector& selector,
ElementFinder::Callback& callback));
void ClickOrTapElement(
const ElementFinder::Result& element,
ClickType click_type,
base::OnceCallback<void(const ClientStatus&)> callback) override {
// Transforming callback into a references allows using RunOnceCallback on
// the argument.
OnClickOrTapElement(element, callback);
}
MOCK_METHOD2(OnClickOrTapElement,
void(const ElementFinder::Result&,
base::OnceCallback<void(const ClientStatus&)>& callback));
void FocusElement(
const ElementFinder::Result& element,
const TopPadding& top_padding,
base::OnceCallback<void(const ClientStatus&)> callback) override {
OnFocusElement(element, top_padding, callback);
}
MOCK_METHOD3(OnFocusElement,
void(const ElementFinder::Result& element,
const TopPadding& top_padding,
base::OnceCallback<void(const ClientStatus&)>& callback));
void ElementCheck(
const Selector& selector,
bool strict,
base::OnceCallback<void(const ClientStatus&)> callback) override {
OnElementCheck(selector, callback);
}
MOCK_METHOD2(OnElementCheck,
void(const Selector& selector,
base::OnceCallback<void(const ClientStatus&)>& callback));
void GetFieldValue(
const Selector& selector,
base::OnceCallback<void(const ClientStatus&, const std::string&)>
callback) override {
OnGetFieldValue(selector, callback);
}
MOCK_METHOD2(OnGetFieldValue,
void(const Selector& selector,
base::OnceCallback<void(const ClientStatus&,
const std::string&)>& callback));
void GetStringAttribute(
const ElementFinder::Result& element,
const std::vector<std::string>& attributes,
base::OnceCallback<void(const ClientStatus&, const std::string&)>
callback) override {
OnGetStringAttribute(element, attributes, callback);
}
MOCK_METHOD3(OnGetStringAttribute,
void(const ElementFinder::Result& element,
const std::vector<std::string>& attributes,
base::OnceCallback<void(const ClientStatus&,
const std::string&)>& callback));
void GetVisualViewport(
base::OnceCallback<void(bool, const RectF&)> callback) override {
OnGetVisualViewport(callback);
}
MOCK_METHOD1(OnGetVisualViewport,
void(base::OnceCallback<void(bool, const RectF&)>& callback));
void GetElementPosition(
const Selector& selector,
base::OnceCallback<void(bool, const RectF&)> callback) override {
OnGetElementPosition(selector, callback);
}
MOCK_METHOD2(OnGetElementPosition,
void(const Selector& selector,
base::OnceCallback<void(bool, const RectF&)>& callback));
void WaitForWindowHeightChange(
base::OnceCallback<void(const ClientStatus&)> callback) {
OnWaitForWindowHeightChange(callback);
}
MOCK_METHOD1(OnWaitForWindowHeightChange,
void(base::OnceCallback<void(const ClientStatus&)>& callback));
MOCK_METHOD2(
OnGetDocumentReadyState,
void(const Selector&,
base::OnceCallback<void(const ClientStatus&, DocumentReadyState)>&));
void GetDocumentReadyState(
const Selector& frame,
base::OnceCallback<void(const ClientStatus&, DocumentReadyState)>
callback) override {
OnGetDocumentReadyState(frame, callback);
}
MOCK_METHOD3(
OnWaitForDocumentReadyState,
void(const Selector&,
DocumentReadyState min_ready_state,
base::OnceCallback<void(const ClientStatus&, DocumentReadyState)>&));
void WaitForDocumentReadyState(
const Selector& frame,
DocumentReadyState min_ready_state,
base::OnceCallback<void(const ClientStatus&, DocumentReadyState)>
callback) override {
OnWaitForDocumentReadyState(frame, min_ready_state, callback);
}
};
} // namespace autofill_assistant
#endif // COMPONENTS_AUTOFILL_ASSISTANT_BROWSER_WEB_MOCK_WEB_CONTROLLER_H_