mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
3666a04883
This commits the result of running gdb/copyright.py as per our Start of New Year procedure... gdb/ChangeLog Update copyright year range in copyright header of all GDB files.
72 lines
2.6 KiB
Plaintext
72 lines
2.6 KiB
Plaintext
# Copyright 2018-2021 Free Software Foundation, Inc.
|
|
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
# Verify GDB/MI -complete in various scenarios. This test only tests
|
|
# -complete command, not the correctness of completions.
|
|
|
|
load_lib mi-support.exp
|
|
set MIFLAGS "-i=mi"
|
|
|
|
standard_testfile .cc
|
|
|
|
if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug c++}] != "" } {
|
|
untested "failed to compile"
|
|
return -1
|
|
}
|
|
|
|
mi_clean_restart $binfile
|
|
|
|
mi_runto_main
|
|
|
|
mi_gdb_test "1-complete br" \
|
|
"1\\^done,completion=\"break\",matches=\\\[.*\"break\",.*\"break-range\".*\\\],max_completions_reached=\"0\"" \
|
|
"-complete br"
|
|
|
|
# Check empty completion list.
|
|
mi_gdb_test "5-complete bogus" \
|
|
"5\\^done,matches=\\\[\\\],max_completions_reached=\"0\"" \
|
|
"-complete bogus"
|
|
|
|
# Check completions for commands with space.
|
|
mi_gdb_test "4-complete \"b mai\"" \
|
|
"4\\^done,completion=\"b main\",matches=\\\[.*\"b main\".*\\\],max_completions_reached=\"0\"" \
|
|
"-complete \"b mai\""
|
|
|
|
# Check wildmatching.
|
|
mi_gdb_test "5-complete \"b push_ba\"" \
|
|
"5\\^done,completion=\"b push_back\\(\",matches=\\\[.*\"b A::push_back\\(void\\*\\)\".*\\\],max_completions_reached=\"0\"" \
|
|
"-complete \"b push_ba\", wildmatching"
|
|
|
|
mi_gdb_test "-info-gdb-mi-command complete" \
|
|
"\\^done,command=\{exists=\"true\"\}" \
|
|
"-info-gdb-mi-command complete"
|
|
|
|
# Limit max completions and check that max_completions_reached=\"0\" is set
|
|
# to 1.
|
|
mi_gdb_test "set max-completions 1" ".*=cmd-param-changed.*\\^done" \
|
|
"set max-completions 1"
|
|
|
|
mi_gdb_test "2-complete br" \
|
|
".*2\\^done,completion=\"br\[A-Za-z0-9-\]+\",matches=\\\[\"br\[A-Za-z0-9-\]+\"\\\],max_completions_reached=\"1\"" \
|
|
"-complete br, max-completions 1"
|
|
|
|
# Disable completions and check an error is returned
|
|
mi_gdb_test "set max-completions 0" ".*=cmd-param-changed.*\\^done" \
|
|
"set max-completions 0"
|
|
|
|
mi_gdb_test "3-complete br" \
|
|
".*3\\^error,msg=\".*" \
|
|
"-complete br, max-completions 0"
|