From 29872606d220420d53fde7cc5e3bea15f8da62e7 Mon Sep 17 00:00:00 2001 From: Raphael Isemann Date: Sun, 1 Sep 2019 09:12:37 +0000 Subject: [lldb] Restructure test folders to match LLDB command hierarchy Summary: As discussed on lldb-dev, this patch moves some LLDB tests into a hierarchy that more closely resembles the commands we use in the LLDB interpreter. This patch should only move tests that use the command interpreter and shouldn't touch any tests that primarily test the SB API. Reviewers: #lldb, jfb, JDevlieghere Reviewed By: #lldb, JDevlieghere Subscribers: dexonsmith, arphaman, JDevlieghere, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D67033 llvm-svn: 370605 --- .../test/commands/command/script_alias/.categories | 1 + .../command/script_alias/TestCommandScriptAlias.py | 38 ++++++++++++++++++++++ .../test/commands/command/script_alias/tcsacmd.py | 11 +++++++ 3 files changed, 50 insertions(+) create mode 100644 lldb/packages/Python/lldbsuite/test/commands/command/script_alias/.categories create mode 100644 lldb/packages/Python/lldbsuite/test/commands/command/script_alias/TestCommandScriptAlias.py create mode 100644 lldb/packages/Python/lldbsuite/test/commands/command/script_alias/tcsacmd.py (limited to 'lldb/packages/Python/lldbsuite/test/commands/command/script_alias') diff --git a/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/.categories b/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/.categories new file mode 100644 index 00000000000..3a3f4df6416 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/.categories @@ -0,0 +1 @@ +cmdline diff --git a/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/TestCommandScriptAlias.py b/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/TestCommandScriptAlias.py new file mode 100644 index 00000000000..e454365edeb --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/TestCommandScriptAlias.py @@ -0,0 +1,38 @@ +""" +Test lldb Python commands. +""" + +from __future__ import print_function + + +import lldb +from lldbsuite.test.lldbtest import * + + +class CommandScriptAliasTestCase(TestBase): + + mydir = TestBase.compute_mydir(__file__) + + def test(self): + self.pycmd_tests() + + def pycmd_tests(self): + self.runCmd("command script import tcsacmd.py") + self.runCmd("command script add -f tcsacmd.some_command_here attach") + + # This is the function to remove the custom commands in order to have a + # clean slate for the next test case. + def cleanup(): + self.runCmd('command script delete attach', check=False) + + # Execute the cleanup function during test case tear down. + self.addTearDownHook(cleanup) + + # We don't want to display the stdout if not in TraceOn() mode. + if not self.TraceOn(): + self.HideStdout() + + self.expect('attach a', substrs=['Victory is mine']) + self.runCmd("command script delete attach") + # this can't crash but we don't care whether the actual attach works + self.runCmd('attach noprocessexistswiththisname', check=False) diff --git a/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/tcsacmd.py b/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/tcsacmd.py new file mode 100644 index 00000000000..8d3248c2723 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/commands/command/script_alias/tcsacmd.py @@ -0,0 +1,11 @@ +from __future__ import print_function +import lldb + + +def some_command_here(debugger, command, result, d): + if command == "a": + print("Victory is mine", file=result) + return True + else: + print("Sadness for all", file=result) + return False -- cgit v1.2.3