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

load(
    "@rules_fuchsia//fuchsia:defs.bzl",
    "fuchsia_package_group",
)
load(
    "@fuchsia_infra//infra:infra.bzl",
    "fuchsia_test_group",
    "fuchsia_tests",
)

fuchsia_package_group(
    name = "fuchsia_samples",
    testonly = True,
    visibility = ["//:__pkg__"],
    deps = [
        "//src/echo:pkg",
        "//src/echo:test_pkg",
        "//src/hello_world:pkg",
        "//src/hello_world:test_pkg",
        "//src/routing:inspect_pkg",
        "//src/routing:pkg",
        "//src/routing/integration_tests:test_pkg",
    ],
)

fuchsia_test_group(
    name = "target_tests",
    product_bundle = "workstation_eng.qemu-x64",
    deps = [
        "//src/echo:test_pkg",
        "//src/hello_world:test_pkg",
        "//src/routing:inspect_pkg",
        "//src/routing/integration_tests:test_pkg",
    ],
)

fuchsia_tests(
    name = "tests",
    visibility = [
        "//:__pkg__",
    ],
    deps = [
        ":target_tests",
    ],
)
