| // Copyright 2021 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. |
| |
| // Add test_manager to core |
| { |
| children: [ |
| { |
| name: "test_manager", |
| url: "fuchsia-pkg://fuchsia.com/test_manager#meta/test_manager.cm", |
| environment: "#full-resolver-env", |
| }, |
| ], |
| use: [ |
| // Integrate with run_test_suite |
| { |
| protocol: [ |
| "fuchsia.test.manager.Query", |
| "fuchsia.test.manager.RunBuilder", |
| ], |
| from: "#test_manager", |
| }, |
| ], |
| offer: [ |
| // Needed by test_manager and/or some test runners |
| { |
| protocol: [ |
| "fuchsia.boot.ReadOnlyLog", |
| "fuchsia.boot.WriteOnlyLog", |
| "fuchsia.diagnostics.ArchiveAccessor", |
| "fuchsia.diagnostics.FeedbackArchiveAccessor", |
| "fuchsia.diagnostics.LegacyMetricsArchiveAccessor", |
| "fuchsia.hardware.pty.Device", |
| "fuchsia.kernel.HypervisorResource", |
| "fuchsia.kernel.MmioResource", |
| "fuchsia.kernel.VmexResource", |
| "fuchsia.logger.Log", |
| "fuchsia.logger.LogSink", |
| "fuchsia.sys2.EventSource", |
| ], |
| from: "parent", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ |
| "fuchsia.feedback.CrashReporter", |
| "fuchsia.intl.PropertyProvider", |
| "fuchsia.sys.Environment", |
| "fuchsia.sys.Loader", |
| ], |
| from: "self", |
| to: "#test_manager", |
| dependency: "weak_for_migration", |
| }, |
| { |
| protocol: [ |
| "fuchsia.media.Audio", |
| "fuchsia.media.AudioDeviceEnumerator", |
| "fuchsia.media.ProfileProvider", |
| ], |
| from: "#audio_core", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ "fuchsia.component.resolution.Resolver" ], |
| from: "#full-resolver", |
| to: "#test_manager", |
| }, |
| { |
| storage: "tmp", |
| from: "self", |
| to: "#test_manager", |
| }, |
| { |
| protocol: "fuchsia.tracing.provider.Registry", |
| from: "#trace_manager", |
| to: "#test_manager", |
| }, |
| |
| // Test realms may offer subdirectories of config-data to test |
| // components. See: |
| // https://fuchsia.dev/fuchsia-src/development/components/data#product-specific_configuration_with_config_data |
| { |
| directory: "config-data", |
| from: "parent", |
| to: "#test_manager", |
| }, |
| |
| // Needed by some non-hermetic tests |
| { |
| protocol: [ |
| "fuchsia.boot.FactoryItems", |
| "fuchsia.boot.RootResource", |
| "fuchsia.device.NameProvider", |
| "fuchsia.kernel.Counter", |
| "fuchsia.kernel.CpuResource", |
| "fuchsia.kernel.DebugResource", |
| "fuchsia.kernel.InfoResource", |
| "fuchsia.kernel.IoportResource", |
| "fuchsia.kernel.IrqResource", |
| "fuchsia.kernel.PowerResource", |
| "fuchsia.kernel.RootJob", |
| "fuchsia.kernel.RootJobForInspect", |
| "fuchsia.kernel.SmcResource", |
| "fuchsia.kernel.Stats", |
| "fuchsia.process.Launcher", |
| "fuchsia.scheduler.ProfileProvider", |
| ], |
| from: "parent", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ "fuchsia.fonts.Provider" ], |
| from: "#font_provider", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ "fuchsia.exception.Handler" ], |
| from: "#exceptions", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ "fuchsia.ui.input3.Keyboard" ], |
| |
| // Note: teXt vs teSt. |
| from: "#text_manager", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ |
| "fuchsia.process.Resolver", |
| "fuchsia.ui.composition.Allocator", |
| "fuchsia.ui.composition.Flatland", |
| "fuchsia.ui.scenic.Scenic", |
| ], |
| from: "self", |
| to: "#test_manager", |
| dependency: "weak_for_migration", |
| }, |
| { |
| protocol: "fuchsia.sysmem.Allocator", |
| from: "#sysmem_connector", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ |
| "fuchsia.hwinfo.Board", |
| "fuchsia.hwinfo.Device", |
| "fuchsia.hwinfo.Product", |
| ], |
| from: "#hwinfo", |
| to: "#test_manager", |
| }, |
| { |
| protocol: [ |
| "fuchsia.settings.Display", |
| "fuchsia.settings.Intl", |
| "fuchsia.settings.Privacy", |
| ], |
| from: "#setui_service", |
| to: "#test_manager", |
| }, |
| { |
| protocol: "fuchsia.memorypressure.Provider", |
| from: "#memory_monitor", |
| to: "#test_manager", |
| }, |
| { |
| protocol: "fuchsia.vulkan.loader.Loader", |
| from: "#vulkan_loader", |
| to: "#test_manager", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-display-controller", |
| to: "#test_manager", |
| subdir: "class/display-controller", |
| }, |
| |
| // Needed for driver tests. |
| { |
| directory: "dev", |
| from: "parent", |
| to: "#test_manager", |
| }, |
| { |
| directory: "boot", |
| from: "parent", |
| to: "#test_manager", |
| }, |
| { |
| // TODO(fxbug.dev/91934) - this is routed to test manager to support chromium tests. |
| // Once we're able, this part of the manifest should be maintained by chromium. |
| directory: "build-info", |
| from: "parent", |
| to: "#test_manager", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-mediacodec", |
| to: "#test_manager", |
| subdir: "class/media-codec", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-goldfish-address-space", |
| to: "#test_manager", |
| subdir: "class/goldfish-address-space", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-goldfish-control", |
| to: "#test_manager", |
| subdir: "class/goldfish-control", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-goldfish-pipe", |
| to: "#test_manager", |
| subdir: "class/goldfish-pipe", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-goldfish-sync", |
| to: "#test_manager", |
| subdir: "class/goldfish-sync", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-gpu", |
| to: "#test_manager", |
| subdir: "class/gpu", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-gpu-performance-counters", |
| to: "#test_manager", |
| subdir: "class/gpu-performance-counters", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-input", |
| to: "#test_manager", |
| subdir: "class/input", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-input-report", |
| to: "#test_manager", |
| subdir: "class/input-report", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-tee", |
| to: "#test_manager", |
| subdir: "class/tee", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-securemem", |
| to: "#test_manager", |
| subdir: "class/securemem", |
| }, |
| |
| // Tests of the media system want to test against the real hardware |
| // TODO(fxbug.dev/83512): Remove when specialized test realms are ready. |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-mediacodec", |
| to: "#test_manager", |
| subdir: "class/media-codec", |
| }, |
| { |
| directory: "dev", |
| from: "parent", |
| as: "dev-sysmem", |
| to: "#test_manager", |
| subdir: "class/sysmem", |
| }, |
| { |
| directory: "root-ssl-certificates", |
| from: "parent", |
| to: "#test_manager", |
| }, |
| |
| // Tests of the media system change their behavior based on board |
| // TODO(fxbug.dev/83512): Remove when specialized test realms are ready. |
| { |
| protocol: "fuchsia.sysinfo.SysInfo", |
| from: "parent", |
| to: "#test_manager", |
| }, |
| |
| // Integrate with Remote Control Service |
| { |
| protocol: [ |
| "fuchsia.test.manager.Query", |
| "fuchsia.test.manager.RunBuilder", |
| ], |
| from: "#test_manager", |
| to: "#remote-control", |
| }, |
| |
| // Needed for //src/cobalt/bin/meta/cobalt_testapp_for_prober_do_not_run_manually.cml |
| // and chromium realm. |
| // TODO(fxbug.dev/83038): Remove once e2e is better supported. |
| { |
| protocol: [ |
| "fuchsia.net.http.Loader", |
| "fuchsia.net.interfaces.State", |
| "fuchsia.net.name.Lookup", |
| ], |
| from: "#network", |
| to: "#test_manager", |
| }, |
| |
| // Needed by Chromium and Dart + Flutter runners |
| { |
| protocol: "fuchsia.posix.socket.Provider", |
| from: "#network", |
| to: "#test_manager", |
| }, |
| ], |
| } |