From 92ada4ab0c7bbb2fbeb4ccec8b31e3bfcc3829b7 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Fri, 6 Sep 2019 21:43:33 +0000 Subject: [PATCH] [test] Add a FIXME test for stop-command-source-on-error Modifying the interpreter settings is tricky because they don't take effect until we create a new command interpreter, which should be merely an implementation detail. This leads to confusing and unexpected scenarios. This adds a test cases with FIXMEs for some of the odd scenarios I encountered. I didn't XFAIL the test because I don't think there's a way to get an unexpected PASS if any of the commands succeeds and splitting up the file in multiple tests seems excessive. llvm-svn: 371259 --- lldb/lit/Settings/Inputs/DontStopCommandSource.in | 3 +++ lldb/lit/Settings/Inputs/StopCommandSource.in | 3 +++ .../lit/Settings/TestStopCommandSourceOnError.test | 24 ++++++++++++++++++++++ 3 files changed, 30 insertions(+) create mode 100644 lldb/lit/Settings/Inputs/DontStopCommandSource.in create mode 100644 lldb/lit/Settings/Inputs/StopCommandSource.in create mode 100644 lldb/lit/Settings/TestStopCommandSourceOnError.test diff --git a/lldb/lit/Settings/Inputs/DontStopCommandSource.in b/lldb/lit/Settings/Inputs/DontStopCommandSource.in new file mode 100644 index 0000000..e33a1e3 --- /dev/null +++ b/lldb/lit/Settings/Inputs/DontStopCommandSource.in @@ -0,0 +1,3 @@ +settings set interpreter.stop-command-source-on-error false +bogus +print 123400000 + 56789 diff --git a/lldb/lit/Settings/Inputs/StopCommandSource.in b/lldb/lit/Settings/Inputs/StopCommandSource.in new file mode 100644 index 0000000..19974c0 --- /dev/null +++ b/lldb/lit/Settings/Inputs/StopCommandSource.in @@ -0,0 +1,3 @@ +settings set interpreter.stop-command-source-on-error true +bogus +print 123400000 + 56789 diff --git a/lldb/lit/Settings/TestStopCommandSourceOnError.test b/lldb/lit/Settings/TestStopCommandSourceOnError.test new file mode 100644 index 0000000..a53dc2c --- /dev/null +++ b/lldb/lit/Settings/TestStopCommandSourceOnError.test @@ -0,0 +1,24 @@ +# Modifying the interpreter settings is tricky because they don't take effect +# until we create a new command interpreter, which should be merely an +# implementation detail. This leads to confusing and unexpected scenarios. +# +# Below are a few scenarios that we should fix. + +# CONTINUE: 123456789 +# STOP-NOT: 111111111 +# STOP-NOT: 123456789 + +# FIXME: Should stop +# RUN: %lldb -b -o 'settings set interpreter.stop-command-source-on-error false' -s %S/Inputs/StopCommandSource.in | FileCheck %s --check-prefix CONTINUE + +# FIXME: Should continue +# RUN: %lldb -b -s %S/Inputs/DontStopCommandSource.in -o 'bogus' -o 'print 111100000 + 11111' | FileCheck %s --check-prefix STOP + +# FIXME: Should continue +# RUN: %lldb -b -o 'settings set interpreter.stop-command-source-on-error false' -o 'bogus' -o 'print 123400000 + 56789' | FileCheck %s --check-prefix STOP + +# FIXME: Should continue +# RUN: %lldb -b -s %S/Inputs/DontStopCommandSource.in | FileCheck %s --check-prefix STOP + +# FIXME: Should continue +# RUN: %lldb -b -o 'settings set interpreter.stop-command-source-on-error true' -s %S/Inputs/DontStopCommandSource.in | FileCheck %s --check-prefix STOP -- 2.7.4