summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/lldb/packages/Python/lldbsuite/test/functionalities/wrong_commands/TestWrongCommands.py
blob: c722840b28f4fd37c7e94cb2b45ff4140ff25c8d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
"""
Test how lldb reacts to wrong commands
"""


import lldb
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
from lldbsuite.test import lldbutil

class UnknownCommandTestCase(TestBase):

    mydir = TestBase.compute_mydir(__file__)

    @no_debug_info_test
    def test_ambiguous_command(self):
        command_interpreter = self.dbg.GetCommandInterpreter()
        self.assertTrue(command_interpreter, VALID_COMMAND_INTERPRETER)
        result = lldb.SBCommandReturnObject()

        command_interpreter.HandleCommand("g", result)
        self.assertFalse(result.Succeeded())
        self.assertRegexpMatches(result.GetError(), "Ambiguous command 'g'. Possible matches:")
        self.assertRegexpMatches(result.GetError(), "gui")
        self.assertRegexpMatches(result.GetError(), "gdb-remote")
        self.assertEquals(1, result.GetError().count("gdb-remote"))

    @no_debug_info_test
    def test_unknown_command(self):
        command_interpreter = self.dbg.GetCommandInterpreter()
        self.assertTrue(command_interpreter, VALID_COMMAND_INTERPRETER)
        result = lldb.SBCommandReturnObject()

        command_interpreter.HandleCommand("qbert", result)
        self.assertFalse(result.Succeeded())
        self.assertEquals(result.GetError(), "error: 'qbert' is not a valid command.\n")