code: def test_domain_cpp_build_with_add_function_parentheses_is_True(
      app, status, warning
  ):
      app.build(force_all=True)
  
      def check(spec, text, file):
          pattern = (
              "<li><p>%s<a .*?><code .*?><span .*?>%s</span></code></a></p></li>"
              % spec
          )
          res = re.search(pattern, text)
          if not res:
              print(f"Pattern\n\t{pattern}\nnot found in {file}")
              raise AssertionError
  
      rolePatterns = [
          ("", "Sphinx"),
          ("", "Sphinx::version"),
          ("", "version"),
          ("", "List"),
          ("", "MyEnum"),
      ]
      parenPatterns = [
          ("ref function without parens ", r"paren_1\(\)"),
          ("ref function with parens ", r"paren_2\(\)"),
          (
              "ref function without parens, explicit title ",
              "paren_3_title",
          ),
          (
              "ref function with parens, explicit title ",
              "paren_4_title",
          ),
          ("ref op call without parens ", r"paren_5::operator\(\)\(\)"),
          ("ref op call with parens ", r"paren_6::operator\(\)\(\)"),
          (
              "ref op call without parens, explicit title ",
              "paren_7_title",
          ),
          ("ref op call with parens, explicit title ", "paren_8_title"),
      ]
  
      f = "roles.html"
      t = (app.outdir / f).read_text(encoding="utf8")
      for s in rolePatterns:
          check(s, t, f)
      for s in parenPatterns:
          check(s, t, f)
  
      f = "any-role.html"
      t = (app.outdir / f).read_text(encoding="utf8")
      for s in parenPatterns:
          check(s, t, f)
  
imports: import itertools
  import re
  import zlib
  import pytest
  import sphinx.domains.cpp
  from sphinx import addnodes
  from sphinx.addnodes import desc, desc_content, desc_name, desc_parameter, desc_parameterlist, desc_sig_name, desc_sig_space, desc_signature, desc_signature_line, pending_xref
  from sphinx.domains.cpp import DefinitionError, DefinitionParser, NoOldIdError, Symbol, _id_prefix, _max_id
  from sphinx.ext.intersphinx import load_mappings, normalize_intersphinx_mapping
  from sphinx.testing import restructuredtext
  from sphinx.testing.util import assert_node
  from sphinx.writers.text import STDINDENT
label_desc: Use image node_id 32 for calling a global function with example usage: test_domain_cpp_build_with_add_function_parentheses_is_True(app, status, warning) without return types