[test] Add a FIXME test for stop-command-source-on-error
authorJonas Devlieghere <jonas@devlieghere.com>
Fri, 6 Sep 2019 21:43:33 +0000 (21:43 +0000)
committerJonas Devlieghere <jonas@devlieghere.com>
Fri, 6 Sep 2019 21:43:33 +0000 (21:43 +0000)
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 [new file with mode: 0644]
lldb/lit/Settings/Inputs/StopCommandSource.in [new file with mode: 0644]
lldb/lit/Settings/TestStopCommandSourceOnError.test [new file with mode: 0644]

diff --git a/lldb/lit/Settings/Inputs/DontStopCommandSource.in b/lldb/lit/Settings/Inputs/DontStopCommandSource.in
new file mode 100644 (file)
index 0000000..e33a1e3
--- /dev/null
@@ -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 (file)
index 0000000..19974c0
--- /dev/null
@@ -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 (file)
index 0000000..a53dc2c
--- /dev/null
@@ -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