
In a couple of spots, the TUI tries to center some text in the window. Andrew noticed that the calculation is done strangely and the text ends up somewhat to the left of center. This patch fixes the problem. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31355
85 lines
2.5 KiB
Text
85 lines
2.5 KiB
Text
# Copyright 2019-2024 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/>.
|
|
|
|
# Simple test of TUI register window.
|
|
|
|
tuiterm_env
|
|
|
|
standard_testfile tui-layout.c
|
|
|
|
if {[build_executable "failed to prepare" ${testfile} ${srcfile}] == -1} {
|
|
return -1
|
|
}
|
|
|
|
Term::clean_restart 24 80 $testfile
|
|
|
|
if {![runto_main]} {
|
|
perror "test suppressed"
|
|
return
|
|
}
|
|
|
|
# This is convenient later on.
|
|
gdb_test_no_output "set confirm off"
|
|
|
|
if {![Term::enter_tui]} {
|
|
unsupported "TUI not supported"
|
|
return
|
|
}
|
|
|
|
Term::check_contents "source at startup" "\\|.*21 *return 0"
|
|
|
|
Term::command "layout regs"
|
|
Term::check_box "register box" 0 0 80 8
|
|
Term::check_box "source box in regs layout" 0 7 80 8
|
|
|
|
# The current frame is main, check that registers are available.
|
|
set re_reg_vals_unavailable \
|
|
[string_to_regexp \
|
|
[string cat \
|
|
[string repeat " " 23] \
|
|
{[ Register Values Unavailable ]}]]
|
|
gdb_assert \
|
|
{ ![Term::check_region_contents_p 0 0 80 8 $re_reg_vals_unavailable] } \
|
|
"Register values available"
|
|
|
|
Term::command "kill"
|
|
gdb_assert \
|
|
{ [Term::check_region_contents_p 0 0 80 8 $re_reg_vals_unavailable] } \
|
|
"Register values no longer available"
|
|
|
|
# Check that we can successfully cause the register window to appear
|
|
# using the 'tui reg next' and 'tui reg prev' commands.
|
|
foreach_with_prefix cmd { next prev } {
|
|
Term::clean_restart 24 80 $testfile
|
|
|
|
if {![runto_main]} {
|
|
perror "test suppressed"
|
|
return
|
|
}
|
|
|
|
if {![Term::enter_tui]} {
|
|
unsupported "TUI not supported"
|
|
return
|
|
}
|
|
|
|
Term::command "tui reg ${cmd}"
|
|
Term::check_box "register box" 0 0 80 8
|
|
Term::check_box "source box in regs layout" 0 7 80 8
|
|
Term::check_region_contents "check register group title" \
|
|
0 0 80 1 "Register group: "
|
|
set contents [Term::get_region 0 15 80 8 "\r\n"]
|
|
gdb_assert {![regexp -- "unknown register group '${cmd}'" $contents]} \
|
|
"check register group is known"
|
|
}
|