xref: /aosp_15_r20/external/cronet/ipc/ipc_sync_message_unittest.h (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1 // Copyright 2012 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // no-include-guard-because-multiply-included
6 // Multiply-included message file, hence no include guard here.
7 
8 #include <string>
9 
10 #include "ipc/ipc_message_macros.h"
11 #include "ipc/ipc_message_start.h"
12 
13 #define IPC_MESSAGE_START TestMsgStart
14 
15 IPC_SYNC_MESSAGE_CONTROL0_0(SyncChannelTestMsg_NoArgs)
16 
17 IPC_SYNC_MESSAGE_CONTROL0_1(SyncChannelTestMsg_AnswerToLife,
18                             int /* answer */)
19 
20 IPC_SYNC_MESSAGE_CONTROL1_1(SyncChannelTestMsg_Double,
21                             int /* in */,
22                             int /* out */)
23 
24 IPC_SYNC_MESSAGE_CONTROL0_1(SyncChannelNestedTestMsg_String,
25                             std::string)
26 
27 // out1 is false
28 IPC_SYNC_MESSAGE_CONTROL0_1(Msg_C_0_1, bool)
29 
30 // out1 is true, out2 is 2
31 IPC_SYNC_MESSAGE_CONTROL0_2(Msg_C_0_2, bool, int)
32 
33 // out1 is false, out2 is 3, out3 is "0_3"
34 IPC_SYNC_MESSAGE_CONTROL0_3(Msg_C_0_3, bool, int, std::string)
35 
36 // in1 must be 1, out1 is true
37 IPC_SYNC_MESSAGE_CONTROL1_1(Msg_C_1_1, int, bool)
38 
39 // in1 must be false, out1 is true, out2 is 12
40 IPC_SYNC_MESSAGE_CONTROL1_2(Msg_C_1_2, bool, bool, int)
41 
42 // in1 must be 3, out1 is "1_3", out2 is 13, out3 is false
43 IPC_SYNC_MESSAGE_CONTROL1_3(Msg_C_1_3, int, std::string, int, bool)
44 
45 // in1 must be 1, in2 must be false, out1 is true
46 IPC_SYNC_MESSAGE_CONTROL2_1(Msg_C_2_1, int, bool, bool)
47 
48 // in1 must be false, in2 must be 2, out1 is true, out2 is 22
49 IPC_SYNC_MESSAGE_CONTROL2_2(Msg_C_2_2, bool, int, bool, int)
50 
51 // in1 must be 3, in2 must be true, out1 is "2_3", out2 is 23, out3 is false
52 IPC_SYNC_MESSAGE_CONTROL2_3(Msg_C_2_3, int, bool, std::string, int, bool)
53 
54 // in1 must be 1, in2 must be false, in3 must be "3_1", out1 is true
55 IPC_SYNC_MESSAGE_CONTROL3_1(Msg_C_3_1, int, bool, std::string, bool)
56 
57 // in1 must be "3_3", in2 must be false, in3 must be 2, out1 is true, out2 is
58 // 32
59 IPC_SYNC_MESSAGE_CONTROL3_2(Msg_C_3_2, std::string, bool, int, bool, int)
60 
61 // in1 must be 3, in2 must be "3_3", in3 must be true, out1 is "3_3", out2 is
62 // 33, out3 is false
63 IPC_SYNC_MESSAGE_CONTROL3_3(Msg_C_3_3, int, std::string, bool, std::string,
64                             int, bool)
65 
66 // in1 must be true, in2 must be 3, in3 must be "3_4", out1 is 34, out2 is
67 // true, out3 is "3_4", out3 is false
68 IPC_SYNC_MESSAGE_CONTROL3_4(Msg_C_3_4, bool, int, std::string, int, bool,
69                             std::string, bool)
70 
71 // NOTE: routed messages are just a copy of the above...
72 
73 // out1 is false
74 IPC_SYNC_MESSAGE_ROUTED0_1(Msg_R_0_1, bool)
75 
76 // out1 is true, out2 is 2
77 IPC_SYNC_MESSAGE_ROUTED0_2(Msg_R_0_2, bool, int)
78 
79 // out1 is false, out2 is 3, out3 is "0_3"
80 IPC_SYNC_MESSAGE_ROUTED0_3(Msg_R_0_3, bool, int, std::string)
81 
82 // in1 must be 1, out1 is true
83 IPC_SYNC_MESSAGE_ROUTED1_1(Msg_R_1_1, int, bool)
84 
85 // in1 must be false, out1 is true, out2 is 12
86 IPC_SYNC_MESSAGE_ROUTED1_2(Msg_R_1_2, bool, bool, int)
87 
88 // in1 must be 3, out1 is "1_3", out2 is 13, out3 is false
89 IPC_SYNC_MESSAGE_ROUTED1_3(Msg_R_1_3, int, std::string, int, bool)
90 
91 // in1 must be 1, in2 must be false, out1 is true
92 IPC_SYNC_MESSAGE_ROUTED2_1(Msg_R_2_1, int, bool, bool)
93 
94 // in1 must be false, in2 must be 2, out1 is true, out2 is 22
95 IPC_SYNC_MESSAGE_ROUTED2_2(Msg_R_2_2, bool, int, bool, int)
96 
97 // in1 must be 3, in2 must be true, out1 is "2_3", out2 is 23, out3 is false
98 IPC_SYNC_MESSAGE_ROUTED2_3(Msg_R_2_3, int, bool, std::string, int, bool)
99 
100 // in1 must be 1, in2 must be false, in3 must be "3_1", out1 is true
101 IPC_SYNC_MESSAGE_ROUTED3_1(Msg_R_3_1, int, bool, std::string, bool)
102 
103 // in1 must be "3_3", in2 must be false, in3 must be 2, out1 is true, out2
104 // is 32
105 IPC_SYNC_MESSAGE_ROUTED3_2(Msg_R_3_2, std::string, bool, int, bool, int)
106 
107 // in1 must be 3, in2 must be "3_3", in3 must be true, out1 is "3_3", out2 is
108 // 33, out3 is false
109 IPC_SYNC_MESSAGE_ROUTED3_3(Msg_R_3_3, int, std::string, bool, std::string,
110                            int, bool)
111 
112 // in1 must be true, in2 must be 3, in3 must be "3_4", out1 is 34, out2 is
113 // true, out3 is "3_4", out4 is false
114 IPC_SYNC_MESSAGE_ROUTED3_4(Msg_R_3_4, bool, int, std::string, int, bool,
115                            std::string, bool)
116 
117 IPC_MESSAGE_CONTROL1(SyncChannelTestMsg_Ping, int)
118 IPC_SYNC_MESSAGE_CONTROL1_1(SyncChannelTestMsg_PingTTL, int, int)
119 IPC_SYNC_MESSAGE_CONTROL0_0(SyncChannelTestMsg_Done)
120 
121 // Messages for ReentrantReply test.
122 IPC_SYNC_MESSAGE_CONTROL0_0(SyncChannelTestMsg_Reentrant1)
123 IPC_SYNC_MESSAGE_CONTROL0_0(SyncChannelTestMsg_Reentrant2)
124 IPC_SYNC_MESSAGE_CONTROL0_0(SyncChannelTestMsg_Reentrant3)
125