# Copyright 2019 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.

# A collection of all stress tests available in-tree. The tests in this group will be built
# and run on the core.x64-stress builder.
group("stress-tests") {
  testonly = true
  public_deps = [
    "//src/diagnostics/archivist/tests/stress-test",
    "//src/storage/stress-tests",
    "//src/sys/component_manager/stress_tests_alt",
    "//src/ui/tests/scenic-stress-tests:tests",
    "//src/zircon/tests/restricted-mode-shared/stress:tests",
    "//src/zircon/tests/stress-tests:tests",
  ]
}

# While we don't necessarily want to run all tests on devices with limited
# flash, we should run a few amlogic-HW-dependent tests on astro and/or
# sherlock.  This list is those tests.  This list intentionally doesn't include
# all of :tests above.
group("amlogic_hw_dependent_tests") {
  testonly = true

  public_deps = [
    "//src/media/codec:hw_dependent_tests",
    "//src/media/stream_processors:hw_dependent_tests",

    # Verify communication with amlogic optee.
    "//src/security/bin/tee_manager:optee_smoke_test",
  ]
}
