blob: 2acc966fe8116a3a0c077784973f4d8214b60cd6 [file] [log] [blame]
// Copyright 2020 The Fuchsia 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 SRC_UI_SCENIC_LIB_FLATLAND_ENGINE_TESTS_MOCK_DISPLAY_CONTROLLER_H_
#define SRC_UI_SCENIC_LIB_FLATLAND_ENGINE_TESTS_MOCK_DISPLAY_CONTROLLER_H_
#include <fuchsia/hardware/display/cpp/fidl_test_base.h>
namespace flatland {
class MockDisplayController : public fuchsia::hardware::display::testing::Controller_TestBase {
public:
explicit MockDisplayController() : binding_(this) {}
void WaitForMessage() { binding_.WaitForMessage(); }
void Bind(zx::channel device_channel, zx::channel controller_channel,
async_dispatcher_t* dispatcher = nullptr) {
device_channel_ = std::move(device_channel);
binding_.Bind(fidl::InterfaceRequest<fuchsia::hardware::display::Controller>(
std::move(controller_channel)),
dispatcher);
}
MOCK_METHOD3(SetLayerColorConfig, void(uint64_t, uint32_t, std::vector<uint8_t>));
MOCK_METHOD4(SetLayerImage, void(uint64_t, uint64_t, uint64_t, uint64_t));
MOCK_METHOD2(CheckConfig, void(bool, CheckConfigCallback));
MOCK_METHOD3(ImportBufferCollection,
void(uint64_t, fidl::InterfaceHandle<class ::fuchsia::sysmem::BufferCollectionToken>,
ImportBufferCollectionCallback));
MOCK_METHOD3(SetBufferCollectionConstraints,
void(uint64_t, fuchsia::hardware::display::ImageConfig,
SetBufferCollectionConstraintsCallback));
MOCK_METHOD1(ReleaseBufferCollection, void(uint64_t));
MOCK_METHOD4(ImportImage, void(fuchsia::hardware::display::ImageConfig, uint64_t, uint32_t,
ImportImageCallback));
MOCK_METHOD1(ReleaseImage, void(uint64_t));
MOCK_METHOD4(SetLayerPrimaryPosition,
void(uint64_t, fuchsia::hardware::display::Transform,
fuchsia::hardware::display::Frame, fuchsia::hardware::display::Frame));
MOCK_METHOD1(CreateLayer, void(CreateLayerCallback));
MOCK_METHOD1(DestroyLayer, void(uint64_t));
MOCK_METHOD2(SetDisplayLayers, void(uint64_t, ::std::vector<uint64_t>));
private:
void NotImplemented_(const std::string& name) final {}
fidl::Binding<fuchsia::hardware::display::Controller> binding_;
zx::channel device_channel_;
};
} // namespace flatland
#endif // SRC_UI_SCENIC_LIB_FLATLAND_ENGINE_TESTS_MOCK_DISPLAY_CONTROLLER_H_