# Copyright 2018 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/dart_library.gni")
import("//topaz/runtime/dart/flutter_test.gni")

dart_library("dart") {
  package_name = "lib.testing.app_driver.dart"

  sources = [
    "fake_module_driver.dart",
    "src/fake_module_driver.dart",
  ]

  deps = [
    "//topaz/public/lib/app_driver/dart",
  ]
}

flutter_test("fake_module_driver_test") {
  sources = [
    "fake_module_driver_test.dart",
  ]

  deps = [
    ":dart",
    "//third_party/dart-pkg/pub/async",
    "//third_party/dart-pkg/pub/test",
    "//topaz/public/lib/app_driver/dart",
  ]
}
