blob: e58e64c5d651a17ad6c3f22d3caed3bc77aec7a5 [file] [log] [blame]
# Copyright 2021 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")
import("//build/test.gni")
import("//src/lib/fostr/build/fostr_fidl.gni")
group("tests") {
testonly = true
deps = [ ":component_cpp_tests" ]
}
source_set("test_utils") {
testonly = true
sources = [
"utils.cc",
"utils.h",
]
deps = [
"//sdk/fidl/fuchsia.component.decl",
"//sdk/fidl/fuchsia.component.test",
"//sdk/fidl/fuchsia.io",
"//sdk/lib/sys/component/cpp/testing:cpp",
]
}
executable("echo_server_bin") {
testonly = true
sources = [ "echo_server.cc" ]
deps = [
"//sdk/lib/fidl/cpp",
"//sdk/lib/sys/cpp",
"//src/lib/fxl",
"//src/testing/fidl:placeholders",
"//zircon/system/ulib/async:async-cpp",
"//zircon/system/ulib/async-loop:async-loop-cpp",
"//zircon/system/ulib/async-loop:async-loop-default",
]
}
executable("echo_server_sc_bin") {
testonly = true
sources = [ "echo_server_sc.cc" ]
deps = [
":echo_server_config_lib",
"//sdk/lib/fidl/cpp",
"//sdk/lib/sys/cpp",
"//src/lib/fxl",
"//src/testing/fidl:placeholders",
"//zircon/system/ulib/async:async-cpp",
"//zircon/system/ulib/async-loop:async-loop-cpp",
"//zircon/system/ulib/async-loop:async-loop-default",
]
}
executable("echo_service_server_bin") {
testonly = true
sources = [ "echo_service_server.cc" ]
deps = [
"//examples/fidl/fuchsia.examples",
"//sdk/lib/fidl/cpp",
"//sdk/lib/sys/cpp",
"//sdk/lib/sys/service/cpp",
"//sdk/lib/syslog/cpp",
"//zircon/system/ulib/async-loop:async-loop-cpp",
"//zircon/system/ulib/async-loop:async-loop-default",
]
}
executable("realm_builder_test_bin") {
testonly = true
sources = [ "realm_builder_test.cc" ]
deps = [
":test_utils",
"//examples/fidl/fuchsia.examples:fuchsia.examples",
"//sdk/fidl/fuchsia.component",
"//sdk/fidl/fuchsia.component.decl",
"//sdk/fidl/fuchsia.io",
"//sdk/fidl/fuchsia.logger",
"//sdk/lib/fidl/cpp",
"//sdk/lib/sys/component/cpp/testing:cpp",
"//sdk/lib/sys/cpp",
"//src/lib/fostr/fidl/fuchsia.component.decl",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//src/testing/fidl:placeholders",
]
}
executable("internal_test_bin") {
testonly = true
sources = [ "internal_test.cc" ]
deps = [
":test_utils",
"//sdk/fidl/fuchsia.component",
"//sdk/fidl/fuchsia.component.decl",
"//sdk/fidl/fuchsia.component.test",
"//sdk/fidl/fuchsia.io",
"//sdk/lib/fidl/cpp",
"//sdk/lib/sys/component/cpp/testing:cpp",
"//sdk/lib/sys/cpp",
"//src/lib/fxl/test:gtest_main",
"//src/lib/testing/loop_fixture",
"//src/testing/fidl:placeholders",
]
}
fuchsia_component("echo_server") {
deps = [ ":echo_server_bin" ]
manifest = "meta/echo_server.cml"
testonly = true
}
fuchsia_component_manifest("echo_server_sc_manifest") {
testonly = true
component_name = "echo_server_sc"
manifest = "meta/echo_server_sc.cml"
}
fuchsia_component("echo_server_sc") {
testonly = true
cm_label = ":echo_server_sc_manifest"
deps = [ ":echo_server_sc_bin" ]
}
fuchsia_structured_config_cpp_elf_lib("echo_server_config_lib") {
testonly = true
cm_label = ":echo_server_sc_manifest"
}
fuchsia_structured_config_values("echo_server_default_config") {
testonly = true
cm_label = ":echo_server_sc_manifest"
values = {
my_flag = true
my_uint8 = 255
my_uint16 = 65535
my_uint32 = 4000000000
my_uint64 = 8000000000
my_int8 = -127
my_int16 = -32766
my_int32 = -2000000000
my_int64 = -4000000000
my_string = "hello"
my_vector_of_flag = [
true,
false,
]
my_vector_of_uint8 = [
1,
2,
]
my_vector_of_uint16 = [
2,
3,
]
my_vector_of_uint32 = [
3,
4,
]
my_vector_of_uint64 = [
4,
5,
]
my_vector_of_int8 = [
-1,
-2,
]
my_vector_of_int16 = [
-2,
-3,
]
my_vector_of_int32 = [
-3,
-4,
]
my_vector_of_int64 = [
-4,
-5,
]
my_vector_of_string = [
"foo",
"bar",
]
}
}
fuchsia_component("echo_service_server") {
testonly = true
deps = [ ":echo_service_server_bin" ]
manifest = "meta/echo_service_server.cml"
restricted_features = [ "services" ]
}
fuchsia_component("echo_server_legacy") {
component_name = "echo_server"
deps = [ ":echo_server_bin" ]
manifest = "meta/echo_server.cmx"
testonly = true
}
fuchsia_component("realm_builder_test") {
testonly = true
deps = [ ":realm_builder_test_bin" ]
manifest = "meta/realm_builder_test.cml"
}
fuchsia_component("pre_populated_realm") {
testonly = true
manifest = "meta/pre_populated_realm.cml"
}
fuchsia_unittest_component("internal_test") {
deps = [ ":internal_test_bin" ]
}
fuchsia_test_package("component_cpp_tests") {
test_components = [
":realm_builder_test",
":internal_test",
]
deps = [
":echo_server",
":echo_server_default_config",
":echo_server_legacy",
":echo_server_sc",
":echo_service_server",
":pre_populated_realm",
]
}