// Copyright 2022 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.
{
    include: [
        "//src/sys/test_runners/gtest/default.shard.cml",
        "inspect/offer.shard.cml",
        "syslog/client.shard.cml",
    ],
    program: {
        binary: "test/early-boot-instrumentation-integration-test",
    },
    children: [
        {
            name: "resource-provider",
            url: "#meta/early-boot-instrumentation-provider.cm",
        },
        {
            name: "early-boot-instrumentation",
            url: "#meta/early-boot-instrumentation.cm",
        },
    ],
    use: [
        {
            directory: "debugdata",
            from: "#early-boot-instrumentation",
            rights: [ "r*" ],
            path: "/debugdata",
        },
    ],
    offer: [
        {
            directory: [ "boot" ],
            from: "#resource-provider",
            to: "#early-boot-instrumentation",
            rights: [ "r*" ],
        },
        {
            protocol: [ "fuchsia.boot.SvcStashProvider" ],
            from: "#resource-provider",
            to: "#early-boot-instrumentation",
        },
        {
            protocol: [ "fuchsia.logger.LogSink" ],
            from: "parent",
            to: [
                "#early-boot-instrumentation",
                "#resource-provider",
            ],
        },
    ],
}
