xref: /aosp_15_r20/external/pigweed/pw_rpc/pwpb/BUILD.gn (revision 61c4878ac05f98d0ceed94b57d316916de578985)
1*61c4878aSAndroid Build Coastguard Worker# Copyright 2022 The Pigweed Authors
2*61c4878aSAndroid Build Coastguard Worker#
3*61c4878aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License"); you may not
4*61c4878aSAndroid Build Coastguard Worker# use this file except in compliance with the License. You may obtain a copy of
5*61c4878aSAndroid Build Coastguard Worker# the License at
6*61c4878aSAndroid Build Coastguard Worker#
7*61c4878aSAndroid Build Coastguard Worker#     https://www.apache.org/licenses/LICENSE-2.0
8*61c4878aSAndroid Build Coastguard Worker#
9*61c4878aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*61c4878aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11*61c4878aSAndroid Build Coastguard Worker# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12*61c4878aSAndroid Build Coastguard Worker# License for the specific language governing permissions and limitations under
13*61c4878aSAndroid Build Coastguard Worker# the License.
14*61c4878aSAndroid Build Coastguard Worker
15*61c4878aSAndroid Build Coastguard Workerimport("//build_overrides/pigweed.gni")
16*61c4878aSAndroid Build Coastguard Worker
17*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_build/target_types.gni")
18*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_docgen/docs.gni")
19*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_sync/backend.gni")
20*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_thread/backend.gni")
21*61c4878aSAndroid Build Coastguard Workerimport("$dir_pw_unit_test/test.gni")
22*61c4878aSAndroid Build Coastguard Worker
23*61c4878aSAndroid Build Coastguard Workerconfig("public") {
24*61c4878aSAndroid Build Coastguard Worker  include_dirs = [ "public" ]
25*61c4878aSAndroid Build Coastguard Worker  visibility = [ ":*" ]
26*61c4878aSAndroid Build Coastguard Worker}
27*61c4878aSAndroid Build Coastguard Worker
28*61c4878aSAndroid Build Coastguard Workerpw_source_set("server_api") {
29*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public" ]
30*61c4878aSAndroid Build Coastguard Worker  public = [
31*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/internal/method.h",
32*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/internal/method_union.h",
33*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/server_reader_writer.h",
34*61c4878aSAndroid Build Coastguard Worker  ]
35*61c4878aSAndroid Build Coastguard Worker  sources = [ "server_reader_writer.cc" ]
36*61c4878aSAndroid Build Coastguard Worker  public_deps = [
37*61c4878aSAndroid Build Coastguard Worker    ":common",
38*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc/raw:server_api",
39*61c4878aSAndroid Build Coastguard Worker    "..:config",
40*61c4878aSAndroid Build Coastguard Worker    "..:server",
41*61c4878aSAndroid Build Coastguard Worker    dir_pw_bytes,
42*61c4878aSAndroid Build Coastguard Worker  ]
43*61c4878aSAndroid Build Coastguard Worker  deps = [
44*61c4878aSAndroid Build Coastguard Worker    "..:log_config",
45*61c4878aSAndroid Build Coastguard Worker    dir_pw_log,
46*61c4878aSAndroid Build Coastguard Worker  ]
47*61c4878aSAndroid Build Coastguard Worker  allow_circular_includes_from = [ ":common" ]
48*61c4878aSAndroid Build Coastguard Worker}
49*61c4878aSAndroid Build Coastguard Worker
50*61c4878aSAndroid Build Coastguard Workerpw_source_set("client_api") {
51*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public" ]
52*61c4878aSAndroid Build Coastguard Worker  public_deps = [
53*61c4878aSAndroid Build Coastguard Worker    ":common",
54*61c4878aSAndroid Build Coastguard Worker    "..:client",
55*61c4878aSAndroid Build Coastguard Worker    dir_pw_function,
56*61c4878aSAndroid Build Coastguard Worker  ]
57*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc/pwpb/client_reader_writer.h" ]
58*61c4878aSAndroid Build Coastguard Worker}
59*61c4878aSAndroid Build Coastguard Worker
60*61c4878aSAndroid Build Coastguard Workerpw_source_set("common") {
61*61c4878aSAndroid Build Coastguard Worker  public_deps = [
62*61c4878aSAndroid Build Coastguard Worker    "..:common",
63*61c4878aSAndroid Build Coastguard Worker    dir_pw_bytes,
64*61c4878aSAndroid Build Coastguard Worker    dir_pw_span,
65*61c4878aSAndroid Build Coastguard Worker  ]
66*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public" ]
67*61c4878aSAndroid Build Coastguard Worker  deps = [
68*61c4878aSAndroid Build Coastguard Worker    "..:client",
69*61c4878aSAndroid Build Coastguard Worker    "..:log_config",
70*61c4878aSAndroid Build Coastguard Worker    "..:server",
71*61c4878aSAndroid Build Coastguard Worker    dir_pw_log,
72*61c4878aSAndroid Build Coastguard Worker    dir_pw_stream,
73*61c4878aSAndroid Build Coastguard Worker  ]
74*61c4878aSAndroid Build Coastguard Worker  public = [
75*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/internal/common.h",
76*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/serde.h",
77*61c4878aSAndroid Build Coastguard Worker  ]
78*61c4878aSAndroid Build Coastguard Worker}
79*61c4878aSAndroid Build Coastguard Worker
80*61c4878aSAndroid Build Coastguard Workerpw_source_set("test_method_context") {
81*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public" ]
82*61c4878aSAndroid Build Coastguard Worker  public = [
83*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/fake_channel_output.h",
84*61c4878aSAndroid Build Coastguard Worker    "public/pw_rpc/pwpb/test_method_context.h",
85*61c4878aSAndroid Build Coastguard Worker  ]
86*61c4878aSAndroid Build Coastguard Worker  public_deps = [
87*61c4878aSAndroid Build Coastguard Worker    ":server_api",
88*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
89*61c4878aSAndroid Build Coastguard Worker    dir_pw_assert,
90*61c4878aSAndroid Build Coastguard Worker    dir_pw_containers,
91*61c4878aSAndroid Build Coastguard Worker    dir_pw_span,
92*61c4878aSAndroid Build Coastguard Worker  ]
93*61c4878aSAndroid Build Coastguard Worker}
94*61c4878aSAndroid Build Coastguard Worker
95*61c4878aSAndroid Build Coastguard Workerpw_source_set("client_testing") {
96*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc/pwpb/client_testing.h" ]
97*61c4878aSAndroid Build Coastguard Worker  public_deps = [
98*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
99*61c4878aSAndroid Build Coastguard Worker    "..:client",
100*61c4878aSAndroid Build Coastguard Worker    "../raw:client_testing",
101*61c4878aSAndroid Build Coastguard Worker  ]
102*61c4878aSAndroid Build Coastguard Worker}
103*61c4878aSAndroid Build Coastguard Worker
104*61c4878aSAndroid Build Coastguard Workerpw_source_set("client_server_testing") {
105*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc/pwpb/client_server_testing.h" ]
106*61c4878aSAndroid Build Coastguard Worker  public_deps = [
107*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
108*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_assert",
109*61c4878aSAndroid Build Coastguard Worker    "..:client_server_testing",
110*61c4878aSAndroid Build Coastguard Worker  ]
111*61c4878aSAndroid Build Coastguard Worker}
112*61c4878aSAndroid Build Coastguard Worker
113*61c4878aSAndroid Build Coastguard Workerpw_source_set("client_server_testing_threaded") {
114*61c4878aSAndroid Build Coastguard Worker  public = [ "public/pw_rpc/pwpb/client_server_testing_threaded.h" ]
115*61c4878aSAndroid Build Coastguard Worker  public_deps = [
116*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
117*61c4878aSAndroid Build Coastguard Worker    "..:client_server_testing_threaded",
118*61c4878aSAndroid Build Coastguard Worker  ]
119*61c4878aSAndroid Build Coastguard Worker}
120*61c4878aSAndroid Build Coastguard Worker
121*61c4878aSAndroid Build Coastguard Workerpw_source_set("internal_test_utils") {
122*61c4878aSAndroid Build Coastguard Worker  public = [ "pw_rpc_pwpb_private/internal_test_utils.h" ]
123*61c4878aSAndroid Build Coastguard Worker  public_deps = [
124*61c4878aSAndroid Build Coastguard Worker    dir_pw_status,
125*61c4878aSAndroid Build Coastguard Worker    dir_pw_stream,
126*61c4878aSAndroid Build Coastguard Worker  ]
127*61c4878aSAndroid Build Coastguard Worker}
128*61c4878aSAndroid Build Coastguard Worker
129*61c4878aSAndroid Build Coastguard Workerpw_source_set("echo_service") {
130*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public" ]
131*61c4878aSAndroid Build Coastguard Worker  public_deps = [ "..:protos.pwpb_rpc" ]
132*61c4878aSAndroid Build Coastguard Worker  sources = [ "public/pw_rpc/echo_service_pwpb.h" ]
133*61c4878aSAndroid Build Coastguard Worker}
134*61c4878aSAndroid Build Coastguard Worker
135*61c4878aSAndroid Build Coastguard Workerpw_source_set("client_integration_test") {
136*61c4878aSAndroid Build Coastguard Worker  testonly = pw_unit_test_TESTONLY
137*61c4878aSAndroid Build Coastguard Worker  public_configs = [ ":public" ]
138*61c4878aSAndroid Build Coastguard Worker  public_deps = [
139*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:binary_semaphore",
140*61c4878aSAndroid Build Coastguard Worker    "..:integration_testing",
141*61c4878aSAndroid Build Coastguard Worker    "..:protos.pwpb_rpc",
142*61c4878aSAndroid Build Coastguard Worker    dir_pw_assert,
143*61c4878aSAndroid Build Coastguard Worker    dir_pw_unit_test,
144*61c4878aSAndroid Build Coastguard Worker  ]
145*61c4878aSAndroid Build Coastguard Worker  sources = [ "client_integration_test.cc" ]
146*61c4878aSAndroid Build Coastguard Worker}
147*61c4878aSAndroid Build Coastguard Worker
148*61c4878aSAndroid Build Coastguard Workerpw_doc_group("docs") {
149*61c4878aSAndroid Build Coastguard Worker  sources = [ "docs.rst" ]
150*61c4878aSAndroid Build Coastguard Worker}
151*61c4878aSAndroid Build Coastguard Worker
152*61c4878aSAndroid Build Coastguard Workerpw_test_group("tests") {
153*61c4878aSAndroid Build Coastguard Worker  tests = [
154*61c4878aSAndroid Build Coastguard Worker    ":client_call_test",
155*61c4878aSAndroid Build Coastguard Worker    ":client_reader_writer_test",
156*61c4878aSAndroid Build Coastguard Worker    ":client_server_context_test",
157*61c4878aSAndroid Build Coastguard Worker    ":client_server_context_threaded_test",
158*61c4878aSAndroid Build Coastguard Worker    ":codegen_test",
159*61c4878aSAndroid Build Coastguard Worker    ":echo_service_test",
160*61c4878aSAndroid Build Coastguard Worker    ":fake_channel_output_test",
161*61c4878aSAndroid Build Coastguard Worker    ":method_lookup_test",
162*61c4878aSAndroid Build Coastguard Worker    ":method_test",
163*61c4878aSAndroid Build Coastguard Worker    ":method_info_test",
164*61c4878aSAndroid Build Coastguard Worker    ":method_union_test",
165*61c4878aSAndroid Build Coastguard Worker    ":server_callback_test",
166*61c4878aSAndroid Build Coastguard Worker    ":server_reader_writer_test",
167*61c4878aSAndroid Build Coastguard Worker    ":serde_test",
168*61c4878aSAndroid Build Coastguard Worker    ":stub_generation_test",
169*61c4878aSAndroid Build Coastguard Worker    ":synchronous_call_test",
170*61c4878aSAndroid Build Coastguard Worker  ]
171*61c4878aSAndroid Build Coastguard Worker}
172*61c4878aSAndroid Build Coastguard Worker
173*61c4878aSAndroid Build Coastguard Workerpw_test("client_call_test") {
174*61c4878aSAndroid Build Coastguard Worker  deps = [
175*61c4878aSAndroid Build Coastguard Worker    ":client_api",
176*61c4878aSAndroid Build Coastguard Worker    ":internal_test_utils",
177*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb",
178*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
179*61c4878aSAndroid Build Coastguard Worker  ]
180*61c4878aSAndroid Build Coastguard Worker  sources = [ "client_call_test.cc" ]
181*61c4878aSAndroid Build Coastguard Worker}
182*61c4878aSAndroid Build Coastguard Worker
183*61c4878aSAndroid Build Coastguard Workerpw_test("client_reader_writer_test") {
184*61c4878aSAndroid Build Coastguard Worker  deps = [
185*61c4878aSAndroid Build Coastguard Worker    ":client_api",
186*61c4878aSAndroid Build Coastguard Worker    ":client_testing",
187*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
188*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
189*61c4878aSAndroid Build Coastguard Worker  ]
190*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_sync_MUTEX_BACKEND != ""
191*61c4878aSAndroid Build Coastguard Worker  sources = [ "client_reader_writer_test.cc" ]
192*61c4878aSAndroid Build Coastguard Worker}
193*61c4878aSAndroid Build Coastguard Worker
194*61c4878aSAndroid Build Coastguard Workerpw_test("client_server_context_test") {
195*61c4878aSAndroid Build Coastguard Worker  deps = [
196*61c4878aSAndroid Build Coastguard Worker    ":client_api",
197*61c4878aSAndroid Build Coastguard Worker    ":client_server_testing",
198*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
199*61c4878aSAndroid Build Coastguard Worker  ]
200*61c4878aSAndroid Build Coastguard Worker  sources = [ "client_server_context_test.cc" ]
201*61c4878aSAndroid Build Coastguard Worker}
202*61c4878aSAndroid Build Coastguard Worker
203*61c4878aSAndroid Build Coastguard Worker_stl_threading_enabled =
204*61c4878aSAndroid Build Coastguard Worker    pw_thread_THREAD_BACKEND == "$dir_pw_thread_stl:thread" &&
205*61c4878aSAndroid Build Coastguard Worker    pw_sync_BINARY_SEMAPHORE_BACKEND != "" && pw_sync_MUTEX_BACKEND != ""
206*61c4878aSAndroid Build Coastguard Worker
207*61c4878aSAndroid Build Coastguard Workerpw_test("client_server_context_threaded_test") {
208*61c4878aSAndroid Build Coastguard Worker  deps = [
209*61c4878aSAndroid Build Coastguard Worker    ":client_api",
210*61c4878aSAndroid Build Coastguard Worker    ":client_server_testing_threaded",
211*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:binary_semaphore",
212*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_sync:mutex",
213*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:non_portable_test_thread_options",
214*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread_stl:non_portable_test_thread_options",
215*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
216*61c4878aSAndroid Build Coastguard Worker  ]
217*61c4878aSAndroid Build Coastguard Worker  sources = [ "client_server_context_threaded_test.cc" ]
218*61c4878aSAndroid Build Coastguard Worker  enable_if = _stl_threading_enabled
219*61c4878aSAndroid Build Coastguard Worker}
220*61c4878aSAndroid Build Coastguard Worker
221*61c4878aSAndroid Build Coastguard Workerpw_test("codegen_test") {
222*61c4878aSAndroid Build Coastguard Worker  deps = [
223*61c4878aSAndroid Build Coastguard Worker    ":client_api",
224*61c4878aSAndroid Build Coastguard Worker    ":internal_test_utils",
225*61c4878aSAndroid Build Coastguard Worker    ":server_api",
226*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
227*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
228*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
229*61c4878aSAndroid Build Coastguard Worker  ]
230*61c4878aSAndroid Build Coastguard Worker  sources = [ "codegen_test.cc" ]
231*61c4878aSAndroid Build Coastguard Worker}
232*61c4878aSAndroid Build Coastguard Worker
233*61c4878aSAndroid Build Coastguard Workerpw_test("echo_service_test") {
234*61c4878aSAndroid Build Coastguard Worker  deps = [
235*61c4878aSAndroid Build Coastguard Worker    ":echo_service",
236*61c4878aSAndroid Build Coastguard Worker    ":server_api",
237*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
238*61c4878aSAndroid Build Coastguard Worker  ]
239*61c4878aSAndroid Build Coastguard Worker  sources = [ "echo_service_test.cc" ]
240*61c4878aSAndroid Build Coastguard Worker}
241*61c4878aSAndroid Build Coastguard Worker
242*61c4878aSAndroid Build Coastguard Workerpw_test("fake_channel_output_test") {
243*61c4878aSAndroid Build Coastguard Worker  deps = [
244*61c4878aSAndroid Build Coastguard Worker    ":server_api",
245*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
246*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
247*61c4878aSAndroid Build Coastguard Worker  ]
248*61c4878aSAndroid Build Coastguard Worker  sources = [ "fake_channel_output_test.cc" ]
249*61c4878aSAndroid Build Coastguard Worker}
250*61c4878aSAndroid Build Coastguard Worker
251*61c4878aSAndroid Build Coastguard Workerpw_test("method_test") {
252*61c4878aSAndroid Build Coastguard Worker  deps = [
253*61c4878aSAndroid Build Coastguard Worker    ":internal_test_utils",
254*61c4878aSAndroid Build Coastguard Worker    ":server_api",
255*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_containers",
256*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb",
257*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
258*61c4878aSAndroid Build Coastguard Worker  ]
259*61c4878aSAndroid Build Coastguard Worker  sources = [ "method_test.cc" ]
260*61c4878aSAndroid Build Coastguard Worker}
261*61c4878aSAndroid Build Coastguard Worker
262*61c4878aSAndroid Build Coastguard Workerpw_test("method_info_test") {
263*61c4878aSAndroid Build Coastguard Worker  deps = [
264*61c4878aSAndroid Build Coastguard Worker    "..:common",
265*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
266*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
267*61c4878aSAndroid Build Coastguard Worker  ]
268*61c4878aSAndroid Build Coastguard Worker  sources = [ "method_info_test.cc" ]
269*61c4878aSAndroid Build Coastguard Worker}
270*61c4878aSAndroid Build Coastguard Worker
271*61c4878aSAndroid Build Coastguard Workerpw_test("method_lookup_test") {
272*61c4878aSAndroid Build Coastguard Worker  deps = [
273*61c4878aSAndroid Build Coastguard Worker    ":server_api",
274*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
275*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
276*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
277*61c4878aSAndroid Build Coastguard Worker    "../raw:test_method_context",
278*61c4878aSAndroid Build Coastguard Worker  ]
279*61c4878aSAndroid Build Coastguard Worker  sources = [ "method_lookup_test.cc" ]
280*61c4878aSAndroid Build Coastguard Worker}
281*61c4878aSAndroid Build Coastguard Worker
282*61c4878aSAndroid Build Coastguard Workerpw_test("method_union_test") {
283*61c4878aSAndroid Build Coastguard Worker  deps = [
284*61c4878aSAndroid Build Coastguard Worker    ":internal_test_utils",
285*61c4878aSAndroid Build Coastguard Worker    ":server_api",
286*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb",
287*61c4878aSAndroid Build Coastguard Worker    "..:test_utils",
288*61c4878aSAndroid Build Coastguard Worker  ]
289*61c4878aSAndroid Build Coastguard Worker  sources = [ "method_union_test.cc" ]
290*61c4878aSAndroid Build Coastguard Worker}
291*61c4878aSAndroid Build Coastguard Worker
292*61c4878aSAndroid Build Coastguard Workerpw_test("serde_test") {
293*61c4878aSAndroid Build Coastguard Worker  deps = [
294*61c4878aSAndroid Build Coastguard Worker    ":server_api",
295*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb",
296*61c4878aSAndroid Build Coastguard Worker  ]
297*61c4878aSAndroid Build Coastguard Worker  sources = [ "serde_test.cc" ]
298*61c4878aSAndroid Build Coastguard Worker}
299*61c4878aSAndroid Build Coastguard Worker
300*61c4878aSAndroid Build Coastguard Workerpw_test("server_callback_test") {
301*61c4878aSAndroid Build Coastguard Worker  deps = [
302*61c4878aSAndroid Build Coastguard Worker    ":server_api",
303*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
304*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
305*61c4878aSAndroid Build Coastguard Worker  ]
306*61c4878aSAndroid Build Coastguard Worker  sources = [ "server_callback_test.cc" ]
307*61c4878aSAndroid Build Coastguard Worker}
308*61c4878aSAndroid Build Coastguard Worker
309*61c4878aSAndroid Build Coastguard Workerpw_test("server_reader_writer_test") {
310*61c4878aSAndroid Build Coastguard Worker  deps = [
311*61c4878aSAndroid Build Coastguard Worker    ":server_api",
312*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
313*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
314*61c4878aSAndroid Build Coastguard Worker  ]
315*61c4878aSAndroid Build Coastguard Worker  sources = [ "server_reader_writer_test.cc" ]
316*61c4878aSAndroid Build Coastguard Worker}
317*61c4878aSAndroid Build Coastguard Worker
318*61c4878aSAndroid Build Coastguard Workerpw_test("stub_generation_test") {
319*61c4878aSAndroid Build Coastguard Worker  deps = [ "..:test_protos.pwpb_rpc" ]
320*61c4878aSAndroid Build Coastguard Worker  sources = [ "stub_generation_test.cc" ]
321*61c4878aSAndroid Build Coastguard Worker}
322*61c4878aSAndroid Build Coastguard Worker
323*61c4878aSAndroid Build Coastguard Workerpw_test("synchronous_call_test") {
324*61c4878aSAndroid Build Coastguard Worker  deps = [
325*61c4878aSAndroid Build Coastguard Worker    ":test_method_context",
326*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_rpc_transport:test_loopback_service_registry",
327*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_thread:thread",
328*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_work_queue:pw_work_queue",
329*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_work_queue:stl_test_thread",
330*61c4878aSAndroid Build Coastguard Worker    "$dir_pw_work_queue:test_thread",
331*61c4878aSAndroid Build Coastguard Worker    "..:synchronous_client_api",
332*61c4878aSAndroid Build Coastguard Worker    "..:test_protos.pwpb_rpc",
333*61c4878aSAndroid Build Coastguard Worker  ]
334*61c4878aSAndroid Build Coastguard Worker  sources = [ "synchronous_call_test.cc" ]
335*61c4878aSAndroid Build Coastguard Worker  enable_if = pw_sync_TIMED_THREAD_NOTIFICATION_BACKEND != ""
336*61c4878aSAndroid Build Coastguard Worker
337*61c4878aSAndroid Build Coastguard Worker  # TODO: https://pwbug.dev/325509758 - Doesn't work on the Pico yet; hangs
338*61c4878aSAndroid Build Coastguard Worker  # indefinitely.
339*61c4878aSAndroid Build Coastguard Worker  if (pw_build_EXECUTABLE_TARGET_TYPE == "pico_executable") {
340*61c4878aSAndroid Build Coastguard Worker    enable_if = false
341*61c4878aSAndroid Build Coastguard Worker  }
342*61c4878aSAndroid Build Coastguard Worker}
343