mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-21 20:45:53 -04:00

Summary: So far lldb is printing this when it finds an ambiguous command: ``` (lldb) g Ambiguous command 'g'. Possible matches: gdb-remote gui gdb-remote gui ``` The duplicates come from the fact that we call the same query twice with the same parameters and add it to the same list. This patch just removes the second query call to `GetCommandObject`. As `GetCommandObject` is const and the name parameter is also not modified, this shouldn't break anything else. I didn't merge the remaining if statement into the else as I think otherwise the `if obj==nullptr do X else Y` pattern in there becomes hard to recognize. Reviewers: davide Reviewed By: davide Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D49866 llvm-svn: 338043
40 lines
1.4 KiB
Python
40 lines
1.4 KiB
Python
"""
|
|
Test how lldb reacts to wrong commands
|
|
"""
|
|
|
|
from __future__ import print_function
|
|
|
|
import os
|
|
import time
|
|
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")
|