# 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/rust/rustc_library.gni")
import("//build/rust/rustc_test.gni")

rustc_library("testing") {
  with_unit_tests = true
  edition = "2021"

  sources = [ "src/lib.rs" ]
}

rustc_test("testing_integration_test") {
  deps = [ ":testing" ]
  edition = "2021"
  source_root = "tests/integration_test.rs"

  sources = [ "tests/integration_test.rs" ]
}

rustc_test("testing_integration_test_two") {
  deps = [ ":testing" ]
  edition = "2021"
  source_root = "tests/integration_test_two.rs"

  sources = [ "tests/integration_test_two.rs" ]
}
