33 descriptors_to_servicers = {
34 _application_testing_common.FIRST_SERVICE: servicer
43 _application_testing_common.FIRST_SERVICE_UNUN, (),
44 _application_common.UNARY_UNARY_REQUEST,
None)
45 initial_metadata = rpc.initial_metadata()
46 response, trailing_metadata, code, details = rpc.termination()
48 self.assertEqual(_application_common.UNARY_UNARY_RESPONSE, response)
49 self.assertIs(code, grpc.StatusCode.OK)
53 _application_testing_common.FIRST_SERVICE_UNSTRE, (),
54 _application_common.UNARY_STREAM_REQUEST,
None)
55 initial_metadata = rpc.initial_metadata()
56 trailing_metadata, code, details = rpc.termination()
58 self.assertIs(code, grpc.StatusCode.OK)
62 _application_testing_common.FIRST_SERVICE_STREUN, (),
None)
63 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
64 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
65 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
67 initial_metadata = rpc.initial_metadata()
68 response, trailing_metadata, code, details = rpc.termination()
70 self.assertEqual(_application_common.STREAM_UNARY_RESPONSE, response)
71 self.assertIs(code, grpc.StatusCode.OK)
75 _application_testing_common.FIRST_SERVICE_STRESTRE, (),
None)
76 rpc.send_request(_application_common.STREAM_STREAM_REQUEST)
77 initial_metadata = rpc.initial_metadata()
82 rpc.send_request(_application_common.STREAM_STREAM_REQUEST)
83 rpc.send_request(_application_common.STREAM_STREAM_REQUEST)
91 trailing_metadata, code, details = rpc.termination()
93 for response
in responses:
94 self.assertEqual(_application_common.STREAM_STREAM_RESPONSE,
96 self.assertIs(code, grpc.StatusCode.OK)
100 _application_testing_common.FIRST_SERVICE_STRESTRE, (),
None)
101 rpc.send_request(_application_common.STREAM_STREAM_MUTATING_REQUEST)
102 initial_metadata = rpc.initial_metadata()
105 for _
in range(_application_common.STREAM_STREAM_MUTATING_COUNT)
107 rpc.send_request(_application_common.STREAM_STREAM_MUTATING_REQUEST)
110 for _
in range(_application_common.STREAM_STREAM_MUTATING_COUNT)
112 rpc.requests_closed()
113 _, _, _ = rpc.termination()
114 expected_responses = (
115 services_pb2.Bottom(first_bottom_field=0),
116 services_pb2.Bottom(first_bottom_field=1),
117 services_pb2.Bottom(first_bottom_field=0),
118 services_pb2.Bottom(first_bottom_field=1),
120 self.assertSequenceEqual(expected_responses, responses)
124 _application_testing_common.FIRST_SERVICE_UNUN, (),
125 _application_common.UNARY_UNARY_REQUEST,
None)
126 first_initial_metadata = rpc.initial_metadata()
127 second_initial_metadata = rpc.initial_metadata()
128 third_initial_metadata = rpc.initial_metadata()
129 first_termination = rpc.termination()
130 second_termination = rpc.termination()
131 third_termination = rpc.termination()
133 for later_initial_metadata
in (
134 second_initial_metadata,
135 third_initial_metadata,
137 self.assertEqual(first_initial_metadata, later_initial_metadata)
138 response = first_termination[0]
139 terminal_metadata = first_termination[1]
140 code = first_termination[2]
141 details = first_termination[3]
142 for later_termination
in (
146 self.assertEqual(response, later_termination[0])
147 self.assertEqual(terminal_metadata, later_termination[1])
148 self.assertIs(code, later_termination[2])
149 self.assertEqual(details, later_termination[3])
150 self.assertEqual(_application_common.UNARY_UNARY_RESPONSE, response)
151 self.assertIs(code, grpc.StatusCode.OK)
155 _application_testing_common.FIRST_SERVICE_UNUN, (),
156 _application_common.ERRONEOUS_UNARY_UNARY_REQUEST,
None)
157 initial_metadata = rpc.initial_metadata()
158 response, trailing_metadata, code, details = rpc.termination()
160 self.assertIsNot(code, grpc.StatusCode.OK)
164 _application_testing_common.FIRST_SERVICE_STREUN, (),
165 _application_common.INFINITE_REQUEST_STREAM_TIMEOUT)
166 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
167 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
168 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
169 initial_metadata = rpc.initial_metadata()
171 _application_common.INFINITE_REQUEST_STREAM_TIMEOUT * 2)
172 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
173 response, trailing_metadata, code, details = rpc.termination()
175 self.assertIs(code, grpc.StatusCode.DEADLINE_EXCEEDED)
179 _application_testing_common.FIRST_SERVICE_STREUN, (),
180 _application_common.INFINITE_REQUEST_STREAM_TIMEOUT)
181 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
182 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
183 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
184 initial_metadata = rpc.initial_metadata()
186 _application_common.INFINITE_REQUEST_STREAM_TIMEOUT * 2)
187 rpc.send_request(_application_common.STREAM_UNARY_REQUEST)
188 response, trailing_metadata, code, details = rpc.termination()
190 self.assertIs(code, grpc.StatusCode.DEADLINE_EXCEEDED)
194 _application_testing_common.FIRST_SERVICE_UNUN, (),
195 _application_common.ABORT_REQUEST,
None)
196 _, _, code, _ = rpc.termination()
197 self.assertIs(code, grpc.StatusCode.PERMISSION_DENIED)
199 _application_testing_common.FIRST_SERVICE_UNUN, (),
200 _application_common.ABORT_SUCCESS_QUERY,
None)
201 response, _, code, _ = rpc.termination()
202 self.assertEqual(_application_common.ABORT_SUCCESS_RESPONSE, response)
203 self.assertIs(code, grpc.StatusCode.OK)
206 if __name__ ==
'__main__':
207 unittest.main(verbosity=2)