# Copyright 2023 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_mobly_test.gni")
import("//build/testing/environments.gni")

if (is_host) {
  python_mobly_test("snapshot_test_fc") {
    main_source = "snapshot_test.py"
    libraries = [
      "//src/testing/end_to_end/honeydew",
      "//src/testing/end_to_end/mobly_base_tests:fuchsia_base_test",
    ]

    params_source = "params.yaml"
    transport = "fuchsia-controller"
    environments = [
      emu_env,
      vim3_env,
      nuc_env,
    ]
  }
}

group("tests") {
  testonly = true
}
