# Copyright 2017 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("//topaz/runtime/dart/dart_test.gni")
import("//build/dart/dart_tool.gni")

dart_tool("mod") {
  package_name = "mod"

  main_dart = "bin/mod.dart"

  sources = [
    "../bin/mod.dart",
    "commands.dart",
    "src/commands/command_runner.dart",
    "src/commands/create.dart",
  ]

  deps = [
    "//third_party/dart-pkg/pub/args",
    "//third_party/dart-pkg/pub/path",
    "//third_party/dart-pkg/pub/strings",
  ]
}

dart_test("mod_tests") {
  sources = [
    "commands/create_test.dart",
  ]

  deps = [
    ":mod_dart_library",
    "//third_party/dart-pkg/pub/test",
  ]
}
