diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2019-08-20 18:01:57 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2019-08-20 18:01:57 +0000 |
commit | 88c643b6fec27eec436c8d138fee6346e92337d6 (patch) | |
tree | 82cd13b2f3cde1c9e5f79689ba4e6ba67694843f /packages/Python/lldbsuite/test/tools/lldb-mi/control/TestMiExec.py | |
parent | 94994d372d014ce4c8758b9605d63fae651bd8aa (diff) |
Notes
Diffstat (limited to 'packages/Python/lldbsuite/test/tools/lldb-mi/control/TestMiExec.py')
-rw-r--r-- | packages/Python/lldbsuite/test/tools/lldb-mi/control/TestMiExec.py | 141 |
1 files changed, 0 insertions, 141 deletions
diff --git a/packages/Python/lldbsuite/test/tools/lldb-mi/control/TestMiExec.py b/packages/Python/lldbsuite/test/tools/lldb-mi/control/TestMiExec.py deleted file mode 100644 index 00c52dbe97aa..000000000000 --- a/packages/Python/lldbsuite/test/tools/lldb-mi/control/TestMiExec.py +++ /dev/null @@ -1,141 +0,0 @@ -""" -Test lldb-mi -exec-xxx commands. -""" - -from __future__ import print_function - - -import lldbmi_testcase -from lldbsuite.test.decorators import * -from lldbsuite.test.lldbtest import * -from lldbsuite.test import lldbutil - - -class MiExecTestCase(lldbmi_testcase.MiTestCaseBase): - - mydir = TestBase.compute_mydir(__file__) - - @skipIfRemote # We do not currently support remote debugging via the MI. - @skipIfWindows # llvm.org/pr24452: Get lldb-mi tests working on Windows - @skipIfFreeBSD # llvm.org/pr22411: Failure presumably due to known thread races - def test_lldbmi_exec_abort(self): - """Test that 'lldb-mi --interpreter' works for -exec-abort.""" - - self.spawnLldbMi(args=None) - - # Test that -exec-abort fails on invalid process - self.runCmd("-exec-abort") - self.expect( - "\^error,msg=\"Command 'exec-abort'\. Invalid process during debug session\"") - - # Load executable - self.runCmd("-file-exec-and-symbols %s" % self.myexe) - self.expect("\^done") - - # Set arguments - self.runCmd("-exec-arguments arg1") - self.expect("\^done") - - # Run to main - self.runCmd("-break-insert -f main") - self.expect("\^done,bkpt={number=\"1\"") - self.runCmd("-exec-run") - self.expect("\^running") - self.expect("\*stopped,reason=\"breakpoint-hit\"") - - # Test that arguments were passed - self.runCmd("-data-evaluate-expression argc") - self.expect("\^done,value=\"2\"") - - # Test that program may be aborted - self.runCmd("-exec-abort") - self.expect("\^done") - self.expect("\*stopped,reason=\"exited-normally\"") - - # Test that program can be run again - self.runCmd("-exec-run") - self.expect("\^running") - self.expect("\*stopped,reason=\"breakpoint-hit\"") - - # Test that arguments were passed again - self.runCmd("-data-evaluate-expression argc") - self.expect("\^done,value=\"2\"") - - # Test that program may be aborted again - self.runCmd("-exec-abort") - self.expect("\^done") - self.expect("\*stopped,reason=\"exited-normally\"") - - @skipIfRemote # We do not currently support remote debugging via the MI. - @skipIfWindows # llvm.org/pr24452: Get lldb-mi tests working on Windows - @skipIfFreeBSD # llvm.org/pr22411: Failure presumably due to known thread races - def test_lldbmi_exec_arguments_set(self): - """Test that 'lldb-mi --interpreter' can pass args using -exec-arguments.""" - - self.spawnLldbMi(args=None) - - # Load executable - self.runCmd("-file-exec-and-symbols %s" % self.myexe) - self.expect("\^done") - - # Set arguments - self.runCmd( - "-exec-arguments --arg1 \"2nd arg\" third_arg fourth=\"4th arg\"") - self.expect("\^done") - - # Run to main - self.runCmd("-break-insert -f main") - self.expect("\^done,bkpt={number=\"1\"") - self.runCmd("-exec-run") - self.expect("\^running") - self.expect("\*stopped,reason=\"breakpoint-hit\"") - - # Check argc and argv to see if arg passed - # Note that exactly=True is needed to avoid extra escaping for re - self.runCmd("-data-evaluate-expression argc") - self.expect("\^done,value=\"5\"") - #self.runCmd("-data-evaluate-expression argv[1]") - # self.expect("\^done,value=\"--arg1\"") - self.runCmd("-interpreter-exec command \"print argv[1]\"") - self.expect("\\\"--arg1\\\"", exactly=True) - #self.runCmd("-data-evaluate-expression argv[2]") - #self.expect("\^done,value=\"2nd arg\"") - self.runCmd("-interpreter-exec command \"print argv[2]\"") - self.expect("\\\"2nd arg\\\"", exactly=True) - #self.runCmd("-data-evaluate-expression argv[3]") - # self.expect("\^done,value=\"third_arg\"") - self.runCmd("-interpreter-exec command \"print argv[3]\"") - self.expect("\\\"third_arg\\\"", exactly=True) - #self.runCmd("-data-evaluate-expression argv[4]") - #self.expect("\^done,value=\"fourth=\\\\\\\"4th arg\\\\\\\"\"") - self.runCmd("-interpreter-exec command \"print argv[4]\"") - self.expect("\\\"fourth=\\\\\\\"4th arg\\\\\\\"\\\"", exactly=True) - - @skipIfRemote # We do not currently support remote debugging via the MI. - @skipIfWindows # llvm.org/pr24452: Get lldb-mi tests working on Windows - @skipIfFreeBSD # llvm.org/pr22411: Failure presumably due to known thread races - def test_lldbmi_exec_arguments_reset(self): - """Test that 'lldb-mi --interpreter' can reset previously set args using -exec-arguments.""" - - self.spawnLldbMi(args=None) - - # Load executable - self.runCmd("-file-exec-and-symbols %s" % self.myexe) - self.expect("\^done") - - # Set arguments - self.runCmd("-exec-arguments arg1") - self.expect("\^done") - self.runCmd("-exec-arguments") - self.expect("\^done") - - # Run to main - self.runCmd("-break-insert -f main") - self.expect("\^done,bkpt={number=\"1\"") - self.runCmd("-exec-run") - self.expect("\^running") - self.expect("\*stopped,reason=\"breakpoint-hit\"") - - # Check argc to see if arg passed - self.runCmd("-data-evaluate-expression argc") - self.expect("\^done,value=\"1\"") |