          response_body = await communicator.receive_output()
          self.assertEqual(response_body["type"], "http.response.body")
          self.assertEqual(response_body["body"], b"From Scotland,Wales")
  
      async def test_get_query_string(self):
          application = get_asgi_application()
          for query_string in (b"name=Andrew", "name=Andrew"):
              with self.subTest(query_string=query_string):
 
</s> remove         if request is None:
            await self.send_response(error_response, send)
            return
        # Get the response, using the async mode of BaseHandler.
        response = await self.get_response_async(request)
        response._handler_class = self.__class__
 </s> add 
    async def test_post_body(self):
        application = get_asgi_application()
        scope = self.async_request_factory._base_scope(method="POST", path="/post/")
        communicator = ApplicationCommunicator(application, scope)
        await communicator.send_input({"type": "http.request", "body": b"Echo!"})
        response_start = await communicator.receive_output()
        self.assertEqual(response_start["type"], "http.response.start")
        self.assertEqual(response_start["status"], 200)
        response_body = await communicator.receive_output()
        self.assertEqual(response_body["type"], "http.response.body")
        self.assertEqual(response_body["body"], b"Echo!")

          response_body = await communicator.receive_output()
          self.assertEqual(response_body["type"], "http.response.body")
          self.assertEqual(response_body["body"], b"From Scotland,Wales")
  
    async def test_post_body(self):
        application = get_asgi_application()
        scope = self.async_request_factory._base_scope(method="POST", path="/post/")
        communicator = ApplicationCommunicator(application, scope)
        await communicator.send_input({"type": "http.request", "body": b"Echo!"})
        response_start = await communicator.receive_output()
        self.assertEqual(response_start["type"], "http.response.start")
        self.assertEqual(response_start["status"], 200)
        response_body = await communicator.receive_output()
        self.assertEqual(response_body["type"], "http.response.body")
        self.assertEqual(response_body["body"], b"Echo!")

      async def test_get_query_string(self):
          application = get_asgi_application()
          for query_string in (b"name=Andrew", "name=Andrew"):
              with self.subTest(query_string=query_string):
keep keep keep add keep keep keep keep
 Fixed #33754 -- Fixed crash with prematurely closed ASGI request body.

Regression in 441103a04d1d167dc870eaaf90e3fba974f67c93. 
tests/asgi/tests.py