Author: Raphael Isemann Date: 2019-12-02T11:57:55+01:00 New Revision: 160a5045c699ac523eac3c7a1984705c3e86720e
URL: https://github.com/llvm/llvm-project/commit/160a5045c699ac523eac3c7a1984705c3e86720e DIFF: https://github.com/llvm/llvm-project/commit/160a5045c699ac523eac3c7a1984705c3e86720e.diff LOG: [lldb][NFC] Add 'breakpoint command list' test The command has zero test coverage and I'll have to touch the code formatting the output commands, so let's start by adding a test for it. Added: lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/TestBreakpointCommandList.py lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/a.yaml Modified: Removed: ################################################################################ diff --git a/lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/TestBreakpointCommandList.py b/lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/TestBreakpointCommandList.py new file mode 100644 index 000000000000..f1a8656a73b5 --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/TestBreakpointCommandList.py @@ -0,0 +1,44 @@ +""" +Test 'breakpoint command list'. +""" + +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test import lldbutil + +class TestCase(TestBase): + + mydir = TestBase.compute_mydir(__file__) + + @no_debug_info_test + def test_list_commands(self): + src_dir = self.getSourceDir() + yaml_path = os.path.join(src_dir, "a.yaml") + yaml_base, ext = os.path.splitext(yaml_path) + obj_path = self.getBuildArtifact("main.o") + self.yaml2obj(yaml_path, obj_path) + + # Create a target with the object file we just created from YAML + target = self.dbg.CreateTarget(obj_path) + self.assertTrue(target, VALID_TARGET) + + # Test without any breakpoints. + self.expect("breakpoint command list 1", error=True, substrs=["error: No breakpoints exist for which to list commands"]) + + # Set a breakpoint + self.runCmd("b foo") + + # Check list breakpoint commands for breakpoints that have no commands. + self.expect("breakpoint command list 1", startstr="Breakpoint 1 does not have an associated command.") + + # Add a breakpoint command. + self.runCmd("breakpoint command add -o 'source list' 1") + + # List breakpoint command that we just created. + self.expect("breakpoint command list 1", startstr="""Breakpoint 1: + Breakpoint commands: + source list +""") + + # List breakpoint command with invalid breakpoint ID. + self.expect("breakpoint command list 2", error=True, startstr="error: '2' is not a currently valid breakpoint ID.") diff --git a/lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/a.yaml b/lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/a.yaml new file mode 100644 index 000000000000..1007f60c19ee --- /dev/null +++ b/lldb/packages/Python/lldbsuite/test/commands/breakpoint/command/list/a.yaml @@ -0,0 +1,18 @@ +--- !ELF +FileHeader: + Class: ELFCLASS64 + Data: ELFDATA2LSB + Type: ET_REL + Machine: EM_X86_64 +Sections: + - Name: .text + Type: SHT_PROGBITS + Flags: [ SHF_ALLOC, SHF_EXECINSTR ] + AddressAlign: 0x0000000000000010 + Content: 554889E5897DFC5DC3 +Symbols: + - Name: foo + Type: STT_FUNC + Section: .text + Size: 0x0000000000000009 +... _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits