Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[3.12] gh-109972: Enhance test_gdb (#110026) #110351

Merged
merged 3 commits into from
Oct 4, 2023

Commits on Oct 4, 2023

  1. pythongh-109972: Enhance test_gdb (python#110026)

    * Split test_pycfunction.py: add test_cfunction_full.py.
      Split the function into the following 6 functions. In verbose
      mode, these "pycfunction" tests now log each tested call.
    
      * test_pycfunction_noargs()
      * test_pycfunction_o()
      * test_pycfunction_varargs()
      * test_pycfunction_varargs_keywords()
      * test_pycfunction_fastcall()
      * test_pycfunction_fastcall_keywords()
    
    * Move get_gdb_repr() to PrettyPrintTests.
    * Replace DebuggerTests.get_sample_script() with SAMPLE_SCRIPT.
    * Rename checkout_hook_path to CHECKOUT_HOOK_PATH.
    * Rename gdb_version to GDB_VERSION_TEXT.
    * Replace (gdb_major_version, gdb_minor_version) with GDB_VERSION.
    * run_gdb() uses "backslashreplace" error handler instead of "replace".
    * Add check_gdb() function to util.py.
    * Enhance support.check_cflags_pgo(): check also for sysconfig
      PGO_PROF_USE_FLAG (if available) in compiler flags.
    * Move some SkipTest checks to test_gdb/__init__.py.
    * Elaborate why gdb cannot be tested on Windows: gdb doesn't support
      PDB debug symbol files.
    
    (cherry picked from commit 757cbd4)
    vstinner committed Oct 4, 2023
    Configuration menu
    Copy the full SHA
    b660dcb View commit details
    Browse the repository at this point in the history
  2. pythongh-104736: Fix test_gdb tests on ppc64le with clang (python#109360

    )
    
    Fix test_gdb on Python built with LLVM clang 16 on Linux ppc64le (ex:
    Fedora 38). Search patterns in gdb "bt" command output to detect
    when gdb fails to retrieve the traceback. For example, skip a test if
    "Backtrace stopped: frame did not save the PC" is found.
    
    (cherry picked from commit 44d9a71)
    vstinner committed Oct 4, 2023
    Configuration menu
    Copy the full SHA
    5ead95a View commit details
    Browse the repository at this point in the history
  3. pythongh-110166: Fix gdb CFunctionFullTests on ppc64le clang build (p…

    …ython#110331)
    
    CFunctionFullTests now also runs "bt" command before "py-bt-full",
    similar to CFunctionTests which also runs "bt" command before
    "py-bt". So test_gdb can skip the test if patterns like "?? ()" are
    found in the gdb output.
    
    (cherry picked from commit 1de9406)
    vstinner committed Oct 4, 2023
    Configuration menu
    Copy the full SHA
    8a305ef View commit details
    Browse the repository at this point in the history