code: def test_left_recursion(self) -> None:
      grammar_source = """
          start: expr NEWLINE
          expr: ('-' term | expr '+' term | term)
          term: NUMBER
          """
      test_source = """
          valid_cases = ["-34", "34", "34 + 12", "1 + 1 + 2 + 3"]
          self.check_input_strings_for_grammar(valid_cases)
          """
      self.run_test(grammar_source, test_source)
  
imports: import contextlib
  import subprocess
  import sysconfig
  import textwrap
  import unittest
  import os
  import shutil
  import tempfile
  from pathlib import Path
  from test import test_tools
  from test import support
  from test.support import os_helper, import_helper
  from test.support.script_helper import assert_python_ok
label_desc: Use image node_id 11 for calling the TestCParser obj's underlying member method code with example usage: obj.test_left_recursion() without return types