class_docstr: Test st.help.
class_docstr_tok: ["Test","st.help","."]
docstr: Test basic function with docstring.
docstr_tok: ["Test","basic","function","with","docstring","."]
code: def test_basic_func_with_doc(self):
      """Test basic function with docstring."""
  
      def my_func(some_param, another_param=123):
          """This is the doc"""
          pass
  
      with patch_varname_getter():
          st.help(my_func)
  
      ds = self.get_delta_from_queue().new_element.doc_string
      self.assertEqual("my_func", ds.name)
      self.assertEqual(
          "tests.streamlit.elements.help_test.StHelpTest."
          "test_basic_func_with_doc.<locals>.my_func(some_param, another_param=123)",
          ds.value,
      )
      self.assertEqual("function", ds.type)
      self.assertEqual("This is the doc", ds.doc_string)
  
imports: import inspect
  import sys
  import unittest
  from unittest.mock import patch
  import numpy
  import pytest
  import streamlit
  from streamlit.elements.doc_string import _get_variable_name_from_code_str
  from tests.delta_generator_test_case import DeltaGeneratorTestCase
label_desc: Use image node_id 3 for calling the StHelpTest obj's underlying member method code with example usage: obj.test_basic_func_with_doc() without return types