1 # Copyright
2015-2019 Free Software Foundation
, Inc.
3 # This
program is free software
; you can redistribute it and
/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation
; either version
3 of the License
, or
6 #
(at your option
) any later version.
8 # This
program is distributed in the hope that it will be useful
,
9 # but WITHOUT
ANY WARRANTY
; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License
for more details.
13 # You should have received a copy of the GNU General Public License
14 # along with this
program.
If not
, see
<http
://www.gnu.org
/licenses
/>.
16 # This file is part of the gdb testsuite.
18 # Test the setting of
"history size" via the GDBHISTSIZE environment variable
21 # We cannot expect remote hosts to see environment variables
set on the
24 if { [is_remote host
] } {
25 unsupported
"can't set environment variables on remote host"
29 # Check that the history size is properly
set to SIZE when the environment
30 #
variable ENV_VAR is
set to GDBHISTSIZE.
32 proc test_histsize_history_setting
{ histsize size
{ env_var
"GDBHISTSIZE" } } {
35 save_vars
{ env
(GDBHISTFILE
) env
(GDBHISTSIZE
) env
($env_var
) } {
36 # These environment variables take precedence over whatever
37 # history size is
set in .gdbinit. Make sure the former is not
39 unset
-nocomplain env
(GDBHISTFILE
)
40 unset
-nocomplain env
(GDBHISTSIZE
)
42 set env
($env_var
) $histsize
44 with_test_prefix
"histsize=$histsize" {
48 gdb_test
"show history size" "The size of the command history is $size."
51 gdb_test_no_output
"show commands"
52 } elseif
{ $size
!= "1" } {
53 gdb_test
"show commands" \
54 " . show history size\r\n . show commands"
60 test_histsize_history_setting
"" "unlimited"
61 test_histsize_history_setting
"0" "0"
62 test_histsize_history_setting
"20" "20"
63 test_histsize_history_setting
" 20 " "20"
64 test_histsize_history_setting
"-5" "unlimited"
66 # Test defaulting to
256 upon encountering a non
-numeric GDBHISTSIZE.
67 test_histsize_history_setting
"not_an_integer" "256"
68 test_histsize_history_setting
"10zab" "256"
69 test_histsize_history_setting
"-5ab" "256"
71 # A huge number
(hopefully larger than INT_MAX
)
72 test_histsize_history_setting
"99999999999999999999999999999999999" "unlimited"
74 # We no longer read HISTSIZE
75 test_histsize_history_setting
"50" "256" "HISTSIZE"