| # Copyright 2019 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/package.gni") |
| import("//build/test/test_package.gni") |
| import("//build/testing/environments.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| group("tests") { |
| testonly = true |
| deps = [ |
| ":guest_interaction_tests", |
| ] |
| } |
| |
| proto_library("proto") { |
| sources = [ |
| "proto/guest_interaction.proto", |
| ] |
| |
| generate_python = false |
| cc_generator_options = "lite" |
| generator_plugin_suffix = ".grpc.pb" |
| generator_plugin_label = "//third_party/grpc:grpc_cpp_plugin" |
| |
| import_dirs = [ "//third_party/protobuf/src" ] |
| deps = [ |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| source_set("common") { |
| sources = [ |
| "common.h", |
| ] |
| deps = [ |
| ":proto", |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| source_set("platform_interface_posix") { |
| sources = [ |
| "platform_interface/platform_interface.h", |
| "platform_interface/posix_platform.cc", |
| ] |
| deps = [ |
| ":common", |
| "//third_party/grpc:grpc++", |
| "//third_party/protobuf:protobuf_full", |
| ] |
| } |
| |
| source_set("client_lib") { |
| sources = [ |
| "client/client_operation_state.h", |
| "platform_interface/platform_interface.h", |
| ] |
| deps = [ |
| ":common", |
| ":proto", |
| "//sdk/lib/sys/cpp", |
| "//src/lib/fxl", |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| source_set("server_lib") { |
| sources = [ |
| "platform_interface/platform_interface.h", |
| "server/server_operation_state.h", |
| ] |
| deps = [ |
| ":common", |
| ":proto", |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| source_set("test_lib") { |
| testonly = true |
| sources = [ |
| "test/test_lib.h", |
| ] |
| deps = [ |
| ":proto", |
| "//src/lib/fxl", |
| "//third_party/googletest:gtest_main", |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| executable("client_operation_test") { |
| testonly = true |
| sources = [ |
| "test/client_operation_test.cc", |
| ] |
| deps = [ |
| ":client_lib", |
| ":proto", |
| ":test_lib", |
| "//sdk/lib/sys/cpp", |
| "//src/lib/fxl", |
| "//src/virtualization/lib/grpc:grpc", |
| "//third_party/googletest:gtest_main", |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| executable("server_operation_test") { |
| testonly = true |
| sources = [ |
| "test/server_operation_test.cc", |
| ] |
| deps = [ |
| ":proto", |
| ":server_lib", |
| ":test_lib", |
| "//sdk/lib/sys/cpp", |
| "//third_party/googletest:gtest_main", |
| "//third_party/grpc:grpc++", |
| ] |
| } |
| |
| test_package("guest_interaction_tests") { |
| deps = [ |
| ":client_operation_test", |
| ":server_operation_test", |
| ] |
| |
| tests = [ |
| { |
| name = "client_operation_test" |
| environments = [ nuc_env ] |
| }, |
| { |
| name = "server_operation_test" |
| environments = [ nuc_env ] |
| }, |
| ] |
| } |