// 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/client.shard.cml",

        // Depends on config_data which is a system capability.
        "sys/testing/system-test.shard.cml",
        "syslog/client.shard.cml",
    ],
    program: {
        binary: "bin/exception_broker_integration_test_exe",
    },
    children: [
        {
            name: "crash_reporter",
            url: "#meta/fake_crash_reporter.cm",
        },
        {
            name: "exception_handler",
            url: "#meta/exceptions.cm",
        },
    ],
    use: [
        {
            protocol: [ "fuchsia.feedback.CrashReporter" ],
            from: "#crash_reporter",
        },
        {
            protocol: [ "fuchsia.feedback.testing.FakeCrashReporterQuerier" ],
            from: "#crash_reporter",
        },
        {
            protocol: [ "fuchsia.exception.Handler" ],
            from: "#exception_handler",
        },
        {
            protocol: [ "fuchsia.exception.ProcessLimbo" ],
            from: "#exception_handler",
        },
        {
            protocol: [ "fuchsia.process.Launcher" ],
        },
    ],
    offer: [
        {
            protocol: "fuchsia.feedback.CrashReporter",
            from: "#crash_reporter",
            to: "#exception_handler",
        },
        {
            protocol: "fuchsia.logger.LogSink",
            from: "parent",
            to: [
                "#crash_reporter",
                "#exception_handler",
            ],
        },
        {
            protocol: "fuchsia.process.Launcher",
            from: "parent",
            to: [ "#exception_handler" ],
        },
        {
            directory: "config-data",
            from: "parent",
            to: "#exception_handler",
        },
        {
            storage: "tmp",
            from: "parent",
            to: "#exception_handler",
            rights: [ "rw*" ],
        },
    ],
}
