| # REQUIRES: python, system-darwin | |
| # | |
| # Tests that we loading a Python script from a dSYM and the various | |
| # ways target.load-script-from-symbol-file controls that behaviour. | |
| # RUN: split-file %s %t | |
| # RUN: %clang_host -g %t/main.c -o %t/TestModule.out | |
| # RUN: mkdir -p %t/TestModule.out.dSYM/Contents/Resources/Python | |
| # RUN: cp %t/dsym_script.py %t/TestModule.out.dSYM/Contents/Resources/Python/TestModule.py | |
| # | |
| # RUN: %lldb -b \ | |
| # RUN: -o 'settings set target.load-script-from-symbol-file false' \ | |
| # RUN: -o 'target create %t/TestModule.out' 2>&1 \ | |
| # RUN: | FileCheck %s --implicit-check-not=DSYM_SCRIPT --implicit-check-not=warning | |
| # | |
| # RUN: %lldb -b \ | |
| # RUN: -o 'settings set target.load-script-from-symbol-file warn' \ | |
| # RUN: -o 'target create %t/TestModule.out' 2>&1 \ | |
| # RUN: | FileCheck %s --implicit-check-not=DSYM_SCRIPT --check-prefix=CHECK-WARN --strict-whitespace | |
| # | |
| # RUN: %lldb -b \ | |
| # RUN: -o 'settings set target.load-script-from-symbol-file true' \ | |
| # RUN: -o 'target create %t/TestModule.out' 2>&1 \ | |
| # RUN: | FileCheck %s --implicit-check-not=warning --check-prefix=CHECK-LOADED | |
| # CHECK-WARN: warning: 'TestModule' contains an untrusted debug script. To run this script in this debug session: | |
| # CHECK-WARN-EMPTY: | |
| # CHECK-WARN-NEXT:{{^}} command script import "{{.*}}/TestModule.out.dSYM/Contents/Resources/Python/TestModule.py" | |
| # CHECK-WARN-EMPTY: | |
| # CHECK-WARN-NEXT: To run all discovered debug scripts in this session: | |
| # CHECK-WARN-EMPTY: | |
| # CHECK-WARN-NEXT:{{^}} settings set target.load-script-from-symbol-file true | |
| # CHECK-LOADED: DSYM_SCRIPT | |
| #--- main.c | |
| int main() { return 0; } | |
| #--- dsym_script.py | |
| import sys | |
| def __lldb_init_module(debugger, internal_dict): | |
| print("DSYM_SCRIPT", file=sys.stderr) |