# 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/components.gni")

group("wayland") {
  deps = [
    "bindings",
    "core",
    "server",
  ]
}

group("tests") {
  testonly = true
  deps = [
    "bindings:tests",
    "core:tests",
    "server:tests",
  ]
}

fuchsia_unittest_component("wayland_scanner_front_end_test") {
  deps = [ "bindings/scanner:wayland_scanner_front_end_test" ]
}

fuchsia_unittest_component("wayland_scanner_back_end_test") {
  deps = [ "bindings/scanner:wayland_scanner_back_end_test" ]
}

fuchsia_unittest_component("fuchsia_wayland_core_lib_test") {
  deps = [ "core:core_test" ]
}

fuchsia_test_package("wayland_tests") {
  test_components = [
    ":fuchsia_wayland_core_lib_test",
    ":wayland_scanner_front_end_test",
    ":wayland_scanner_back_end_test",
  ]
}
