test_rst_after_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  data, followed by a reset stream frame. Client asserts that the RPC failed.
22  Client needs to deliver the complete message to the application layer.
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  self._base_server.setup_send(response_data, event.stream_id)
41  # send reset stream
42 
43  def on_send_done(self, stream_id):
44  self._base_server.send_reset_stream()
45  self._base_server._stream_status[stream_id] = False
http2_base_server.H2ProtocolBaseServer
Definition: http2_base_server.py:30
test_rst_after_data.TestcaseRstStreamAfterData
Definition: test_rst_after_data.py:18
test_rst_after_data.TestcaseRstStreamAfterData.on_send_done
def on_send_done(self, stream_id)
Definition: test_rst_after_data.py:43
test_rst_after_data.TestcaseRstStreamAfterData._ready_to_send
_ready_to_send
Definition: test_rst_after_data.py:39
test_rst_after_data.TestcaseRstStreamAfterData.__init__
def __init__(self)
Definition: test_rst_after_data.py:25
test_rst_after_data.TestcaseRstStreamAfterData.on_data_received
def on_data_received(self, event)
Definition: test_rst_after_data.py:33
test_rst_after_data.TestcaseRstStreamAfterData._base_server
_base_server
Definition: test_rst_after_data.py:26
test_rst_after_data.TestcaseRstStreamAfterData.get_base_server
def get_base_server(self)
Definition: test_rst_after_data.py:30


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