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

group("dart") {
  testonly = true
  public_deps = [
    "//examples/dart:tests",
    "//examples/dart/fuchsia_services/mind_reader/bin:mind-reader-dart",
  ]
}

group("tests") {
  testonly = true

  # TODO(fxb/41505): Temporarily disable flutter_tester tests on mac hosts.
  _flutter_tester_tests = []
  if (host_os != "mac") {
    _flutter_tester_tests += [ "//examples/dart/fuchsia_inspect_flutter/torus15:torus15_flutter_test($host_toolchain)" ]
  }

  public_deps =
      [
        "//examples/dart/fuchsia_inspect_flutter/torus15",
        "//examples/dart/fuchsia_inspect_flutter/torus15:torus15-dart-test",
      ] + _flutter_tester_tests
}
