# Copyright 2015-2022 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 . gdb_exit gdb_start if {[skip_tui_tests] || [target_info exists gdb,nointerrupts]} { return } gdb_test_no_output "set max-completions unlimited" # TAB-complete INPUT_LINE, and expect EXPECTED_RE as completion match # output. proc test_tab_completion {input_line expected_re} { global gdb_prompt set test "tab completion" send_gdb "$input_line\t\t\t" gdb_test_multiple "" "$test" { -re "$expected_re\r\n$gdb_prompt " { gdb_test_multiple "" "$test" { -re "^$input_line $" { pass "$test" } } } } send_gdb "\003" set test "quit command input" gdb_test_multiple "" "$test" { -re "$gdb_prompt $" { pass "$test" } } } with_test_prefix "completion of layout names" { test_tab_completion "layout" "asm *next *prev *regs *split *src *" } with_test_prefix "completion of focus command" { test_tab_completion "focus" "cmd *next *prev *src *" }