code: def test_yield_types(self):
      docstring = dedent(
          """
              Example Function
  
              Yields
              ------
              scalar or array-like
                  The result of the computation
          """
      )
      expected = dedent(
          """
              Example Function
  
              :Yields: :term:`scalar` or :class:`array-like <numpy.ndarray>` -- The result of the computation
          """
      )
      translations = {
          "scalar": ":term:`scalar`",
          "array-like": ":class:`array-like <numpy.ndarray>`",
      }
      config = Config(
          napoleon_type_aliases=translations,
          napoleon_preprocess_types=True,
      )
      app = mock.Mock()
      actual = str(NumpyDocstring(docstring, config, app, "method"))
      assert expected == actual
  
imports: import re
  from collections import namedtuple
  from inspect import cleandoc
  from textwrap import dedent
  from unittest import mock
  import pytest
  from sphinx.ext.napoleon import Config
  from sphinx.ext.napoleon.docstring import GoogleDocstring, NumpyDocstring, _convert_numpy_type_spec, _recombine_set_tokens, _token_type, _tokenize_type_spec
  from tests.test_extensions.ext_napoleon_pep526_data_google import PEP526GoogleClass
  from tests.test_extensions.ext_napoleon_pep526_data_numpy import PEP526NumpyClass
label_desc: Use image node_id 12 for calling the TestNumpyDocstring obj's underlying member method code with example usage: obj.test_yield_types() without return types