# Copyright 2023-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 . # Check that "set tui compact-source on" has the intended effect. require allow_tui_tests tuiterm_env standard_testfile # Let's generate the source file. We want a short file, with less than 10 # lines, and the copyright notice by itself is already more that that. set src_list \ [list \ "int" \ "main (void)" \ "{" \ " return 0;" \ "}"] set re_line_four [string_to_regexp [lindex $src_list 3]] set src_txt [join $src_list "\n"] set srcfile [standard_output_file $srcfile] set fd [open $srcfile w] puts $fd $src_txt close $fd if {[build_executable "failed to prepare" ${testfile} ${srcfile}] == -1} { return -1 } Term::clean_restart 24 80 $binfile gdb_test_no_output "maint set tui-left-margin-verbose on" gdb_test_no_output "set tui compact-source on" if {![Term::enter_tui]} { unsupported "TUI not supported" return } set re_border "\\|" set max_line_nr_in_source_file [llength $src_list] # Ensure there are more lines in the window than in the source file. set src_window_lines [expr $max_line_nr_in_source_file + 2] # Account for border size. set src_window_size [expr $src_window_lines + 2] Term::command "wh src $src_window_size" set re_left_margin "___4_" Term::check_contents "compact source format" \ "$re_border$re_left_margin$re_line_four *$re_border" set re_left_margin "___0*[expr $max_line_nr_in_source_file + 1]_" Term::check_contents_not "no surplus line number" \ "$re_border$re_left_margin *$re_border"