blob: 0ed87d47b0912fda2a3a61a6888c181890fe25dd [file] [log] [blame] [view]
Daniel Erat5b270ed2018-05-02 05:37:541# Tast Test Dependencies
2
3A test may specify software features that must be supported by the DUT's system
4image in order for the test to run successfully. If one or more features aren't
5supported by the DUT, the test will (usually) be skipped. See the `tast`
6command's `-checktestdeps` flag to control this behavior.
7
8Tests specify dependencies through the `SoftwareDeps` field in [testing.Test].
9The following software features are defined:
10
Daniel Eratd8c4c4c2018-05-08 00:35:1211* `android` - The ability to [run Android apps].
Daniel Erat943de1b2018-07-03 17:32:1612* `audio_play` - The ability to play audio.
13* `audio_record` - The ability to record audio.
Daniel Erat5b270ed2018-05-02 05:37:5414* `chrome` - A Chrome process.
15* `chrome_login` - Implies `chrome` with the further requirement that user
16 login (i.e. using `session_manager` and `cryptohome`) is supported.
Shuhei Takahashidd131722018-08-01 06:53:2117* `display_backlight` - An internal display backlight.
Daniel Erat943de1b2018-07-03 17:32:1618* `tpm` - A [Trusted Platform Module] chip.
Stephen Barbere1482562018-05-21 23:54:5219* `vm_host` - The ability to [run virtual machines].
Daniel Erat5b270ed2018-05-02 05:37:5420
21Software features are composed from USE flags. [local_test_runner] lists boolean
22expressions that are used to generate features; for example, an imaginary
23feature named `hd_audio` with expression `cras && (audio_chipset_a ||
24audio_chipset_b) && !broken_headphone_jack` will be reported as available on
25systems where the `cras` USE flag is set, either `audio_chipset_a` or
26`audio_chipset_b` is set, and `broken_headphone_jack` is explicitly *not* set.
27Before a new USE flag can be used in an expression, it must be added to `IUSE`
28in the [tast-use-flags] package.
29
30[testing.Test]: https://godoc.org/chromium.googlesource.com/chromiumos/platform/tast.git/src/chromiumos/tast/testing#Test
Daniel Eratd8c4c4c2018-05-08 00:35:1231[run Android apps]: https://developer.android.com/topic/arc/
Stephen Barbere1482562018-05-21 23:54:5232[run virtual machines]: https://chromium.googlesource.com/chromiumos/docs/+/master/containers_and_vms.md
Daniel Erat943de1b2018-07-03 17:32:1633[Trusted Platform Module]: https://en.wikipedia.org/wiki/Trusted_Platform_Module
Daniel Erat5b270ed2018-05-02 05:37:5434[local_test_runner]: https://chromium.googlesource.com/chromiumos/platform/tast/+/master/src/chromiumos/cmd/local_test_runner/main.go
35[tast-use-flags]: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/master/chromeos-base/tast-use-flags/