| // Copyright 2023 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", |
| "syslog/offer.shard.cml", |
| ], |
| program: { |
| runner: "starnix_test_runner", |
| }, |
| children: [ |
| { |
| name: "kernel", |
| url: "starnix_kernel#meta/starnix_kernel.cm", |
| }, |
| { |
| name: "ui", |
| url: "test-ui-stack#meta/test-ui-stack.cm", |
| }, |
| { |
| name: "netstack", |
| url: "netstack#meta/netstack.cm", |
| }, |
| { |
| name: "network-tun", |
| url: "network-tun#meta/network-tun.cm", |
| }, |
| { |
| name: "power-broker", |
| url: "power-broker#meta/power-broker.cm", |
| }, |
| { |
| name: "system-activity-governor", |
| url: "system-activity-governor#meta/system-activity-governor.cm", |
| }, |
| { |
| name: "fake-hrtimer", |
| url: "fake-hrtimer#meta/fake-hrtimer.cm", |
| }, |
| ], |
| capabilities: [ |
| { protocol: "fuchsia.test.Suite" }, |
| ], |
| use: [ |
| { |
| protocol: [ "fuchsia.component.Realm" ], |
| from: "framework", |
| }, |
| ], |
| |
| // The test runner will dispatch the permissions that the starnix kernel |
| // need from the test to the runner. |
| offer: [ |
| { |
| protocol: [ |
| "fuchsia.buildinfo.Provider", |
| "fuchsia.diagnostics.ArchiveAccessor", |
| "fuchsia.kernel.Stats", |
| "fuchsia.kernel.VmexResource", |
| "fuchsia.logger.LogSink", |
| "fuchsia.sysinfo.SysInfo", |
| "fuchsia.sysmem.Allocator", |
| "fuchsia.sysmem2.Allocator", |
| "fuchsia.tracing.provider.Registry", |
| "fuchsia.vulkan.loader.Loader", |
| ], |
| from: "parent", |
| to: [ "#kernel" ], |
| }, |
| { |
| protocol: [ "fuchsia.power.broker.Topology" ], |
| from: "#power-broker", |
| to: [ |
| "#kernel", |
| "#system-activity-governor", |
| ], |
| }, |
| { |
| storage: "data", |
| from: "parent", |
| to: [ "#container" ], |
| }, |
| { |
| protocol: [ |
| "fuchsia.power.suspend.Stats", |
| "fuchsia.power.system.ActivityGovernor", |
| ], |
| from: "#system-activity-governor", |
| to: [ "#kernel" ], |
| }, |
| { |
| protocol: [ |
| "fuchsia.logger.LogSink", |
| "fuchsia.scheduler.RoleManager", |
| "fuchsia.sysmem.Allocator", |
| "fuchsia.sysmem2.Allocator", |
| "fuchsia.tracing.provider.Registry", |
| "fuchsia.vulkan.loader.Loader", |
| ], |
| from: "parent", |
| to: "#ui", |
| }, |
| { |
| protocol: [ |
| "fuchsia.ui.composition.Allocator", |
| "fuchsia.ui.composition.Flatland", |
| "fuchsia.ui.display.singleton.Info", |
| "fuchsia.ui.input3.Keyboard", |
| "fuchsia.ui.scenic.Scenic", |
| "fuchsia.ui.test.input.Registry", |
| ], |
| from: "#ui", |
| to: [ "#kernel" ], |
| }, |
| { |
| protocol: [ |
| "fuchsia.net.interfaces.admin.Installer", |
| "fuchsia.net.interfaces.State", |
| "fuchsia.net.root.Interfaces", |
| "fuchsia.net.routes.admin.RouteTableV4", |
| "fuchsia.net.routes.admin.RouteTableV6", |
| "fuchsia.net.routes.StateV4", |
| "fuchsia.net.routes.StateV6", |
| "fuchsia.posix.socket.packet.Provider", |
| "fuchsia.posix.socket.Provider", |
| "fuchsia.posix.socket.raw.Provider", |
| ], |
| from: "#netstack", |
| to: [ "#kernel" ], |
| }, |
| { |
| protocol: [ "fuchsia.net.tun.Control" ], |
| from: "#network-tun", |
| to: [ "#kernel" ], |
| }, |
| { |
| directory: "dev-gpu", |
| from: "parent", |
| to: [ "#kernel" ], |
| }, |
| { |
| directory: "boot-kernel", |
| from: "parent", |
| to: [ "#kernel" ], |
| }, |
| { |
| protocol: "fuchsia.logger.LogSink", |
| from: "parent", |
| to: [ |
| "#netstack", |
| "#power-broker", |
| "#system-activity-governor", |
| ], |
| }, |
| { |
| directory: "dev-hrtimer", |
| from: "#fake-hrtimer", |
| to: [ "#kernel" ], |
| }, |
| ], |
| environments: [ |
| { |
| name: "starnix_runner_env", |
| extends: "realm", |
| runners: [ |
| { |
| runner: "starnix", |
| from: "#kernel", |
| }, |
| ], |
| }, |
| ], |
| } |