# 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",
  "shader_reload_test.dart",
  "vmservice_methods_test.dart",
]

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

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