// 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: [ "inspect/offer.shard.cml" ],

    // This component bundles all the different test runners starnix uses, and exposes all their
    // runner capabilities. This makes it easier for the test runner component to include all the
    // starnix test runners.
    children: [
        {
            name: "starnix_test_runner",
            url: "fuchsia-pkg://fuchsia.com/starnix-test-runners#meta/starnix_test_runner.cm",
        },
        {
            name: "starnix_unit_test_runner",
            url: "fuchsia-pkg://fuchsia.com/starnix-test-runners#meta/starnix_unit_test_runner.cm",
        },
    ],
    offer: [
        {
            protocol: [ "fuchsia.logger.LogSink" ],
            from: "parent",
            to: [
                "#starnix_test_runner",
                "#starnix_unit_test_runner",
            ],
        },
        {
            directory: "boot-kernel",
            from: "parent",
            to: [
                "#starnix_test_runner",
                "#starnix_unit_test_runner",
            ],
        },
        {
            storage: "tmp",
            from: "parent",
            to: [ "#starnix_test_runner" ],
        },
        {
            protocol: [
                "fuchsia.process.Launcher",
                "fuchsia.test.runner.LibraryLoaderCacheBuilder",
            ],
            from: "parent",
            to: [ "#starnix_unit_test_runner" ],
        },
        {
            protocol: "fuchsia.tracing.provider.Registry",
            from: "parent",
            to: [ "#starnix_unit_test_runner" ],
            availability: "optional",
            source_availability: "unknown",
        },
    ],
    expose: [
        {
            runner: "starnix_test_runner",
            from: "#starnix_test_runner",
        },
        {
            runner: "starnix_unit_test_runner",
            from: "#starnix_unit_test_runner",
        },
    ],
}
