# Copyright 2022 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/python/python_host_test.gni")

assert(is_host)

python_host_test("gen_fidldocs_test") {
  enable_mypy = true
  main_source = "gen_fidldocs_test.py"
  sources = [ "../gen_fidldocs.py" ]
}

group("tests") {
  testonly = true
  deps = [ ":gen_fidldocs_test" ]
}
