# Copyright 2013 The Flutter 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("//flutter/testing/dart/compile_test.gni")

tests = [
  "skp_test.dart",
  "tracing_test.dart",
]

foreach(test, tests) {
  compile_flutter_dart_test("compile_$test") {
    dart_file = test
    dart_kernel = "$root_gen_dir/$test.dill"
    packages = "../.packages"
  }
}

group("observatory") {
  testonly = true
  deps = []
  foreach(test, tests) {
    deps += [ ":compile_$test" ]
  }
}
