blob: 449f4b3d38712adfd79a01ed249ba65f09b1a8b2 [file] [log] [blame]
// Copyright 2019 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_DRIVER_FRAMEWORK_COORDINATOR_TEST_H_
#define SRC_DRIVER_FRAMEWORK_COORDINATOR_TEST_H_
#include <fuchsia/device/manager/c/fidl.h>
#include <fuchsia/driver/test/c/fidl.h>
#include <lib/async-loop/cpp/loop.h>
#include <lib/async-loop/default.h>
#include <lib/fdio/directory.h>
#include <lib/fidl/coding.h>
#include <lib/fidl/cpp/message.h>
#include <lib/fidl/cpp/message_builder.h>
#include <lib/fidl/txn_header.h>
#include <string.h>
#include <threads.h>
#include <ddk/binding.h>
#include <ddk/driver.h>
#include <fbl/algorithm.h>
#include "coordinator.h"
#include "devfs.h"
#include "devhost.h"
#include "fdio.h"
constexpr char kSystemDriverPath[] = "/boot/driver/platform-bus.so";
class DummyFsProvider : public devmgr::FsProvider {
~DummyFsProvider() {}
zx::channel CloneFs(const char* path) override { return zx::channel(); }
};
void CreateBootArgs(const char* config, size_t size, devmgr::BootArgs* boot_args);
devmgr::CoordinatorConfig DefaultConfig(async_dispatcher_t* dispatcher,
devmgr::BootArgs* boot_args);
void InitializeCoordinator(devmgr::Coordinator* coordinator);
void CheckBindDriverReceived(const zx::channel& remote, const char* expected_driver);
#endif // SRC_DRIVER_FRAMEWORK_COORDINATOR_TEST_H_