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

import("//build/dart/test.gni")
import("//build/testing/environments.gni")

dart_test("update_test") {
  sources = [ "update_test.dart" ]

  environments = [ emu_env ]

  deps = [
    "//sdk/testing/sl4f/client",
    "//third_party/dart-pkg/pub/logging",
    "//third_party/dart-pkg/pub/mockito",
    "//third_party/dart-pkg/pub/test",
  ]
}

group("test") {
  testonly = true

  deps = [ ":update_test($host_toolchain)" ]
}
