test_rst_during_data.py
Go to the documentation of this file.
1 # Copyright 2016 gRPC authors.
2 #
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
6 #
7 # http://www.apache.org/licenses/LICENSE-2.0
8 #
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
14 
15 import http2_base_server
16 
17 
19  """
20  In response to an incoming request, this test sends headers, followed by
21  some data, followed by a reset stream frame. Client asserts that the RPC
22  failed and does not deliver the message to the application.
23  """
24 
25  def __init__(self):
27  self._base_server._handlers['DataReceived'] = self.on_data_received
28  self._base_server._handlers['SendDone'] = self.on_send_done
29 
30  def get_base_server(self):
31  return self._base_server
32 
33  def on_data_received(self, event):
34  self._base_server.on_data_received_default(event)
35  sr = self._base_server.parse_received_data(event.stream_id)
36  if sr:
37  response_data = self._base_server.default_response_data(
38  sr.response_size)
39  self._ready_to_send = True
40  response_len = len(response_data)
41  truncated_response_data = response_data[0:response_len / 2]
42  self._base_server.setup_send(truncated_response_data,
43  event.stream_id)
44 
45  def on_send_done(self, stream_id):
46  self._base_server.send_reset_stream()
47  self._base_server._stream_status[stream_id] = False
test_rst_during_data.TestcaseRstStreamDuringData
Definition: test_rst_during_data.py:18
http2_base_server.H2ProtocolBaseServer
Definition: http2_base_server.py:30
test_rst_during_data.TestcaseRstStreamDuringData.get_base_server
def get_base_server(self)
Definition: test_rst_during_data.py:30
test_rst_during_data.TestcaseRstStreamDuringData.on_data_received
def on_data_received(self, event)
Definition: test_rst_during_data.py:33
test_rst_during_data.TestcaseRstStreamDuringData.on_send_done
def on_send_done(self, stream_id)
Definition: test_rst_during_data.py:45
test_rst_during_data.TestcaseRstStreamDuringData._ready_to_send
_ready_to_send
Definition: test_rst_during_data.py:39
test_rst_during_data.TestcaseRstStreamDuringData._base_server
_base_server
Definition: test_rst_during_data.py:26
test_rst_during_data.TestcaseRstStreamDuringData.__init__
def __init__(self)
Definition: test_rst_during_data.py:25
len
int len
Definition: abseil-cpp/absl/base/internal/low_level_alloc_test.cc:46


grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:28