| // 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. |
| |
| // TODO(https://fxbug.dev/42173552): Consider making this not Chromium-specific or using |
| // //sdk/lib/sys/testing/system-test.shard.cml instead. |
| { |
| collections: [ |
| { |
| name: "chromium-system-tests", |
| environment: "#test-env", |
| durability: "transient", |
| }, |
| ], |
| offer: [ |
| { |
| // Hermetic protocols offered to all tests. See |
| // https://fuchsia.dev/fuchsia-src/development/testing/components/test_runner_framework#hermetic_capabilities_for_tests. |
| protocol: [ |
| "fuchsia.inspect.InspectSink", |
| "fuchsia.logger.LogSink", |
| "fuchsia.process.Launcher", |
| ], |
| from: "parent", |
| to: [ "#chromium-system-tests" ], |
| }, |
| |
| // These system capabilities are offered for use by the chromium tests. |
| { |
| protocol: [ |
| "fuchsia.buildinfo.Provider", |
| "fuchsia.device.NameProvider", |
| "fuchsia.feedback.ComponentDataRegister", |
| "fuchsia.feedback.CrashReportingProductRegister", |
| "fuchsia.fonts.Provider", |
| "fuchsia.hwinfo.Board", |
| "fuchsia.hwinfo.Device", |
| "fuchsia.hwinfo.Product", |
| "fuchsia.intl.PropertyProvider", |
| "fuchsia.kernel.VmexResource", |
| "fuchsia.media.Audio", |
| "fuchsia.media.AudioDeviceEnumerator", |
| "fuchsia.media.ProfileProvider", |
| "fuchsia.mediacodec.CodecFactory", |
| "fuchsia.memorypressure.Provider", |
| "fuchsia.net.http.Loader", |
| "fuchsia.net.interfaces.State", |
| "fuchsia.net.name.Lookup", |
| "fuchsia.posix.socket.Provider", |
| "fuchsia.scheduler.RoleManager", |
| "fuchsia.settings.Display", |
| |
| // Tests of the media system change their behavior based on |
| // board. |
| "fuchsia.sysinfo.SysInfo", |
| "fuchsia.sysmem.Allocator", |
| "fuchsia.sysmem2.Allocator", |
| "fuchsia.vulkan.loader.Loader", |
| "fuchsia.web.ContextProvider", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| }, |
| { |
| protocol: [ |
| "fuchsia.element.GraphicalPresenter", |
| "fuchsia.media.drm.Widevine", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| availability: "optional", |
| }, |
| |
| // These protocols are optional because they may not exist on all products that |
| // include test_manager. They are routed with `same_as_target` because they |
| // are required by Chromium tests. The tests run only on products where the |
| // protocols are available. |
| { |
| protocol: [ |
| "fuchsia.accessibility.semantics.SemanticsManager", |
| "fuchsia.input.virtualkeyboard.ControllerCreator", |
| "fuchsia.media.SessionAudioConsumerFactory", |
| "fuchsia.stash.SecureStore", |
| "fuchsia.ui.composition.Allocator", |
| "fuchsia.ui.composition.Flatland", |
| "fuchsia.ui.input3.Keyboard", |
| "fuchsia.ui.scenic.Scenic", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| availability: "same_as_target", |
| }, |
| { |
| protocol: [ |
| "fuchsia.tracing.perfetto.ProducerConnector", |
| "fuchsia.tracing.provider.Registry", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| availability: "same_as_target", |
| }, |
| |
| // 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: "#chromium-system-tests", |
| }, |
| { |
| event_stream: [ |
| "capability_requested", |
| "debug_started", |
| "destroyed", |
| "discovered", |
| "started", |
| "stopped", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| scope: "#chromium-system-tests", |
| }, |
| { |
| directory: [ |
| "dev-goldfish-address-space", |
| "dev-goldfish-control", |
| "dev-goldfish-pipe", |
| "dev-goldfish-sync", |
| "dev-gpu", |
| "dev-mediacodec", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| rights: [ "r*" ], |
| }, |
| { |
| directory: "root-ssl-certificates", |
| from: "parent", |
| to: "#chromium-system-tests", |
| }, |
| { |
| directory: [ |
| // `tzdata-icu` offers /config/tzdata/icu. |
| // `tzdata-icu-44-le` offers /config/tzdata/icu/44/le only. |
| "tzdata-icu", |
| "tzdata-icu-44-le", |
| ], |
| from: "parent", |
| to: "#chromium-system-tests", |
| }, |
| { |
| storage: "fxfs_tests_data", |
| from: "self", |
| as: "data", |
| to: [ "#chromium-system-tests" ], |
| }, |
| { |
| storage: "tmp", |
| from: "self", |
| to: [ "#chromium-system-tests" ], |
| }, |
| { |
| storage: "cache", |
| from: "self", |
| to: [ "#chromium-system-tests" ], |
| }, |
| ], |
| } |