code: def test_rst_format_typed_args_and_kwargs(self):
      docstring = """Docstring summary.
  
      :param arg1: Description of arg1.
      :type arg1: str.
      :key arg2: Description of arg2.
      :type arg2: bool.
      :key arg3: Description of arg3.
      :type arg3: str.
      """
      docstring_info = docstrings.parse(docstring)
      expected_docstring_info = DocstringInfo(
          summary="Docstring summary.",
          args=[
              ArgInfo(
                  name="arg1",
                  type="str",
                  description="Description of arg1.",
              ),
              KwargInfo(
                  name="arg2",
                  type="bool",
                  description="Description of arg2.",
              ),
              KwargInfo(
                  name="arg3",
                  type="str",
                  description="Description of arg3.",
              ),
          ],
      )
      self.assertEqual(expected_docstring_info, docstring_info)
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from fire import docstrings
  from fire import testutils
label_desc: Use image node_id 18 for calling the DocstringsTest obj's underlying member method code with example usage: obj.test_rst_format_typed_args_and_kwargs() without return types