text: from docstring_parser.parser import parse
  
  
  def test_rest() -> None:
      docstring = parse(
          """
          Short description
  
          Long description
  
          Causing people to indent:
  
              A lot sometimes
  
          :param spam: spam desc
          :param int bla: bla desc
          :param str yay:
          :raises ValueError: exc desc
          :returns tuple: ret desc
          """
      )
      assert docstring.short_description == "Short description"
      assert docstring.long_description == (
          "Long description\n\n"
          "Causing people to indent:\n\n"
          "    A lot sometimes"
      )
      assert len(docstring.params) == 3
      assert docstring.params[0].arg_name == "spam"
      assert docstring.params[0].type_name is None
      assert docstring.params[0].description == "spam desc"
      assert docstring.params[1].arg_name == "bla"
      assert docstring.params[1].type_name == "int"
      assert docstring.params[1].description == "bla desc"
      assert docstring.params[2].arg_name == "yay"
      assert docstring.params[2].type_name == "str"
      assert docstring.params[2].description == ""
      assert len(docstring.raises) == 1
      assert docstring.raises[0].type_name == "ValueError"
      assert docstring.raises[0].description == "exc desc"
      assert docstring.returns is not None
      assert docstring.returns.type_name == "tuple"
      assert docstring.returns.description == "ret desc"
  
  
  def test_google() -> None:
      docstring = parse(
          """Short description
  
          Long description
  
          Causing people to indent:
  
              A lot sometimes
  
          Args:
              spam: spam desc
              bla (int): bla desc
              yay (str):
  
          Raises:
              ValueError: exc desc
  
          Returns:
              tuple: ret desc
          """
      )
      assert docstring.short_description == "Short description"
      assert docstring.long_description == (
          "Long description\n\n"
          "Causing people to indent:\n\n"
          "    A lot sometimes"
      )
      assert len(docstring.params) == 3
      assert docstring.params[0].arg_name == "spam"
      assert docstring.params[0].type_name is None
      assert docstring.params[0].description == "spam desc"
      assert docstring.params[1].arg_name == "bla"
      assert docstring.params[1].type_name == "int"
      assert docstring.params[1].description == "bla desc"
      assert docstring.params[2].arg_name == "yay"
      assert docstring.params[2].type_name == "str"
      assert docstring.params[2].description == ""
      assert len(docstring.raises) == 1
      assert docstring.raises[0].type_name == "ValueError"
      assert docstring.raises[0].description == "exc desc"
      assert docstring.returns is not None
      assert docstring.returns.type_name == "tuple"
      assert docstring.returns.description == "ret desc"
  