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

import("//build/test/test_package.gni")
import("//build/testing/environments.gni")
import("//src/sys/build/components.gni")

group("tests") {
  testonly = true
  deps = [
    ":archivist-integration-tests",
    "archive_path:test-spec",
    "data_stats:test-spec",
    "feedback_reader:test-spec",
    "logs-from-crash",
    "logs/cpp:test-spec",
    "logs/rust:test-spec",
    "unified_reader:test-spec",
  ]
}

# only depend on this via the above `tests` group so that fx test sees the tests
fuchsia_package("archivist-integration-tests") {
  testonly = true
  deps = [
    "archive_path",
    "data_stats",
    "feedback_reader",
    "logs/cpp",
    "logs/rust",
    "unified_reader",
  ]
}
