[all-commits] [llvm/llvm-project] 30d559: [lldb] Fix TestTargetAPI.py on Apple simulators

Raphael Isemann via All-commits all-commits at lists.llvm.org
Thu Oct 22 07:42:37 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 30d5590d171c40e05b65585d1b531d8489e783e2
      https://github.com/llvm/llvm-project/commit/30d5590d171c40e05b65585d1b531d8489e783e2
  Author: Raphael Isemann <teemperor at gmail.com>
  Date:   2020-10-22 (Thu, 22 Oct 2020)

  Changed paths:
    M lldb/test/API/python_api/target/TestTargetAPI.py

  Log Message:
  -----------
  [lldb] Fix TestTargetAPI.py on Apple simulators

This test checks that the output of `SBTarget.GetDescription()` contains the
substrings `'a.out', 'Target', 'Module', 'Breakpoint'` in that order. This test
is currently failing on Apple simulators as apparently 'Module' can't be found
in the output after 'Target".

The reason for that is that the actual output of `SBTarget.GetDescription()` looks like this:
```
Target
  Module /build/path/lldb-test-build.noindex/python_api/target/TestTargetAPI.test_get_description_dwarf/a.out
0x7ff2b6d3f990:     ObjectFileMachO64, file = /build/path/lldb-test-build.noindex/python_api/target/TestTargetAPI.test_get_description
[...]
0x7ff307150000:   BreakpointList with 0 Breakpoints:
<LLDB module output repeats for each loaded module>
```

Clearly the string order should be `'Target', 'Module', 'a.out', 'Breakpoint'`.
However, LLDB is also a bunch of system shared libraries (libxpc.dylib,
libobjc.A.dylib, etc.) when *not* running against a simulator, we end up
unintentionally finding the `'Target', 'Module', 'Breakpoint'` substrings in the
trailing descriptions of the system modules. When running against a simulator we
however don't load shared system libraries.

This patch just moves the substrings in the correct order to make this test pass
without having any shared library modules in the description output.

Reviewed By: JDevlieghere

Differential Revision: https://reviews.llvm.org/D89698




More information about the All-commits mailing list