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

group("examples") {
  deps = [
    "hello_experiences",
    "localized_flutter",
    "spinning_cube",
  ]
}

group("tests") {
  testonly = true

  public_deps = [
    ":dart_unittests",
  ]
}

group("dart_unittests") {
  testonly = true

  # TODO(fxb/41505): Temporarily disable flutter_tester tests on mac hosts.
  _flutter_tester_tests = []
  if (host_os != "mac") {
    _flutter_tester_tests += [
      "localized_flutter/localized_flutter_app:localized_flutter_app_unittests($host_toolchain)",
      "hello_experiences:hello_experiences_unittests($host_toolchain)",
    ]
  }

  deps = _flutter_tester_tests
}
