mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-24 12:23:31 +08:00
Use save_vars to replace existing manipulation of globals in tests
gdb/testsuite/ChangeLog: * gdb.base/gdbhistsize-history.exp (test_histsize_history_setting): Use save_vars. * gdb.base/gdbinit-history.exp (test_gdbinit_history_setting): Use save_vars. (test_no_truncation_of_unlimited_history_file): Use save_vars. * gdb.base/readline.exp: Use save_vars.
This commit is contained in:
@ -1,3 +1,12 @@
|
|||||||
|
2015-08-12 Patrick Palka <patrick@parcs.ath.cx>
|
||||||
|
|
||||||
|
* gdb.base/gdbhistsize-history.exp
|
||||||
|
(test_histsize_history_setting): Use save_vars.
|
||||||
|
* gdb.base/gdbinit-history.exp (test_gdbinit_history_setting):
|
||||||
|
Use save_vars.
|
||||||
|
(test_no_truncation_of_unlimited_history_file): Use save_vars.
|
||||||
|
* gdb.base/readline.exp: Use save_vars.
|
||||||
|
|
||||||
2015-08-12 Patrick Palka <patrick@parcs.ath.cx>
|
2015-08-12 Patrick Palka <patrick@parcs.ath.cx>
|
||||||
|
|
||||||
* lib/gdb.exp (save_vars): New proc.
|
* lib/gdb.exp (save_vars): New proc.
|
||||||
|
@ -24,11 +24,7 @@
|
|||||||
proc test_histsize_history_setting { histsize size { env_var "GDBHISTSIZE" } } {
|
proc test_histsize_history_setting { histsize size { env_var "GDBHISTSIZE" } } {
|
||||||
global env
|
global env
|
||||||
|
|
||||||
set have_old_gdbhistsize 0
|
save_vars { env($env_var) } {
|
||||||
if [info exists env($env_var)] {
|
|
||||||
set have_old_gdbhistsize 1
|
|
||||||
set old_gdbhistsize $env($env_var)
|
|
||||||
}
|
|
||||||
set env($env_var) $histsize
|
set env($env_var) $histsize
|
||||||
|
|
||||||
with_test_prefix "histsize=$histsize" {
|
with_test_prefix "histsize=$histsize" {
|
||||||
@ -43,11 +39,6 @@ proc test_histsize_history_setting { histsize size { env_var "GDBHISTSIZE" } } {
|
|||||||
gdb_test "show commands" \
|
gdb_test "show commands" \
|
||||||
" . show history size\r\n . show commands"
|
" . show history size\r\n . show commands"
|
||||||
}
|
}
|
||||||
|
|
||||||
if { $have_old_gdbhistsize } {
|
|
||||||
set env($env_var) $old_gdbhistsize
|
|
||||||
} else {
|
|
||||||
unset env($env_var)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -28,8 +28,7 @@ proc test_gdbinit_history_setting { home size { gdbhistsize_val "-" } } {
|
|||||||
global srcdir
|
global srcdir
|
||||||
global subdir
|
global subdir
|
||||||
|
|
||||||
array set old_env [array get env]
|
save_vars { INTERNAL_GDBFLAGS env(GDBHISTSIZE) env(HOME) } {
|
||||||
|
|
||||||
set env(HOME) "$srcdir/$subdir/$home"
|
set env(HOME) "$srcdir/$subdir/$home"
|
||||||
|
|
||||||
# The GDBHISTSIZE environment variable takes precedence over whatever
|
# The GDBHISTSIZE environment variable takes precedence over whatever
|
||||||
@ -41,7 +40,6 @@ proc test_gdbinit_history_setting { home size { gdbhistsize_val "-" } } {
|
|||||||
set env(GDBHISTSIZE) $gdbhistsize_val
|
set env(GDBHISTSIZE) $gdbhistsize_val
|
||||||
}
|
}
|
||||||
|
|
||||||
set saved_internal_gdbflags $INTERNAL_GDBFLAGS
|
|
||||||
set INTERNAL_GDBFLAGS [string map {"-nx" ""} $INTERNAL_GDBFLAGS]
|
set INTERNAL_GDBFLAGS [string map {"-nx" ""} $INTERNAL_GDBFLAGS]
|
||||||
|
|
||||||
set prefix "home=$home"
|
set prefix "home=$home"
|
||||||
@ -61,11 +59,7 @@ proc test_gdbinit_history_setting { home size { gdbhistsize_val "-" } } {
|
|||||||
gdb_test "show commands" " . show history size\r\n . show commands"
|
gdb_test "show commands" " . show history size\r\n . show commands"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
set INTERNAL_GDBFLAGS $saved_internal_gdbflags
|
|
||||||
|
|
||||||
unset -nocomplain env(GDBHISTSIZE)
|
|
||||||
array set env [array get old_env]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# Check that the history file does not get truncated to zero when a gdbinit
|
# Check that the history file does not get truncated to zero when a gdbinit
|
||||||
@ -75,15 +69,12 @@ proc test_no_truncation_of_unlimited_history_file { } {
|
|||||||
global env
|
global env
|
||||||
global INTERNAL_GDBFLAGS
|
global INTERNAL_GDBFLAGS
|
||||||
|
|
||||||
array set old_env [array get env]
|
save_vars { INTERNAL_GDBFLAGS env(GDBHISTSIZE) } {
|
||||||
|
|
||||||
# The GDBHISTSIZE environment variable takes precedence over whatever
|
# The GDBHISTSIZE environment variable takes precedence over whatever
|
||||||
# history size is set in .gdbinit. Make sure the former is not
|
# history size is set in .gdbinit. Make sure the former is not
|
||||||
# set.
|
# set.
|
||||||
unset -nocomplain env(GDBHISTSIZE)
|
unset -nocomplain env(GDBHISTSIZE)
|
||||||
|
|
||||||
set saved_internal_gdbflags $INTERNAL_GDBFLAGS
|
|
||||||
|
|
||||||
set temp_gdbinit [standard_output_file "gdbinit-history.gdbinit"]
|
set temp_gdbinit [standard_output_file "gdbinit-history.gdbinit"]
|
||||||
set temp_histfile [standard_output_file "gdbinit-history.gdb_history"]
|
set temp_histfile [standard_output_file "gdbinit-history.gdb_history"]
|
||||||
file delete $temp_gdbinit
|
file delete $temp_gdbinit
|
||||||
@ -118,10 +109,7 @@ proc test_no_truncation_of_unlimited_history_file { } {
|
|||||||
gdb_test "server show commands" " . print 1.*"
|
gdb_test "server show commands" " . print 1.*"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
set INTERNAL_GDBFLAGS $saved_internal_gdbflags
|
|
||||||
|
|
||||||
array set env [array get old_env]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
test_gdbinit_history_setting "gdbinit-history/unlimited" "unlimited"
|
test_gdbinit_history_setting "gdbinit-history/unlimited" "unlimited"
|
||||||
|
@ -150,68 +150,48 @@ if { ![readline_is_used] } {
|
|||||||
return -1
|
return -1
|
||||||
}
|
}
|
||||||
|
|
||||||
set oldtimeout1 $timeout
|
save_vars { timeout env(GDBHISTSIZE) env(GDBHISTFILE) } {
|
||||||
set timeout 30
|
set timeout 30
|
||||||
|
|
||||||
|
# A simple test of operate-and-get-next.
|
||||||
# A simple test of operate-and-get-next.
|
operate_and_get_next "Simple operate-and-get-next" \
|
||||||
operate_and_get_next "Simple operate-and-get-next" \
|
|
||||||
"p 1" ".* = 1" \
|
"p 1" ".* = 1" \
|
||||||
"p 2" ".* = 2" \
|
"p 2" ".* = 2" \
|
||||||
"p 3" ".* = 3"
|
"p 3" ".* = 3"
|
||||||
|
|
||||||
# Test operate-and-get-next with a secondary prompt.
|
# Test operate-and-get-next with a secondary prompt.
|
||||||
operate_and_get_next "operate-and-get-next with secondary prompt" \
|
operate_and_get_next "operate-and-get-next with secondary prompt" \
|
||||||
"if 1 > 0" "" \
|
"if 1 > 0" "" \
|
||||||
"p 5" "" \
|
"p 5" "" \
|
||||||
"end" ".* = 5"
|
"end" ".* = 5"
|
||||||
|
|
||||||
# Verify that arrow keys work in secondary prompts. The control
|
# Verify that arrow keys work in secondary prompts. The control
|
||||||
# sequence is a hard-coded VT100 up arrow.
|
# sequence is a hard-coded VT100 up arrow.
|
||||||
gdb_test "print 42" "\\\$\[0-9\]* = 42"
|
gdb_test "print 42" "\\\$\[0-9\]* = 42"
|
||||||
set msg "arrow keys with secondary prompt"
|
set msg "arrow keys with secondary prompt"
|
||||||
gdb_test_multiple "if 1 > 0\n\033\[A\033\[A\nend" $msg {
|
gdb_test_multiple "if 1 > 0\n\033\[A\033\[A\nend" $msg {
|
||||||
-re ".*\\\$\[0-9\]* = 42\r\n$gdb_prompt $" {
|
-re ".*\\\$\[0-9\]* = 42\r\n$gdb_prompt $" {
|
||||||
pass $msg
|
pass $msg
|
||||||
}
|
}
|
||||||
-re ".*Undefined command:.*$gdb_prompt $" {
|
-re ".*Undefined command:.*$gdb_prompt $" {
|
||||||
fail $msg
|
fail $msg
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# Now repeat the first test with a history file that fills the entire
|
# Now repeat the first test with a history file that fills the entire
|
||||||
# history list.
|
# history list.
|
||||||
|
|
||||||
if [info exists env(GDBHISTFILE)] {
|
set env(GDBHISTFILE) "${srcdir}/${subdir}/gdb_history"
|
||||||
set old_gdbhistfile $env(GDBHISTFILE)
|
set env(GDBHISTSIZE) "10"
|
||||||
}
|
|
||||||
if [info exists env(GDBHISTSIZE)] {
|
|
||||||
set old_gdbhistsize $env(GDBHISTSIZE)
|
|
||||||
}
|
|
||||||
set env(GDBHISTFILE) "${srcdir}/${subdir}/gdb_history"
|
|
||||||
set env(GDBHISTSIZE) "10"
|
|
||||||
|
|
||||||
gdb_exit
|
gdb_exit
|
||||||
gdb_start
|
gdb_start
|
||||||
gdb_reinitialize_dir $srcdir/$subdir
|
gdb_reinitialize_dir $srcdir/$subdir
|
||||||
|
|
||||||
operate_and_get_next "Simple operate-and-get-next" \
|
operate_and_get_next "Simple operate-and-get-next" \
|
||||||
"p 7" ".* = 7" \
|
"p 7" ".* = 7" \
|
||||||
"p 8" ".* = 8" \
|
"p 8" ".* = 8" \
|
||||||
"p 9" ".* = 9"
|
"p 9" ".* = 9"
|
||||||
|
|
||||||
|
|
||||||
# Restore globals modified in this test...
|
|
||||||
if [info exists old_gdbhistfile] {
|
|
||||||
set env(GDBHISTFILE) $old_gdbhistfile
|
|
||||||
} else {
|
|
||||||
unset env(GDBHISTFILE)
|
|
||||||
}
|
}
|
||||||
if [info exists old_gdbhistsize] {
|
|
||||||
set env(GDBHISTSIZE) $old_gdbhistsize
|
|
||||||
} else {
|
|
||||||
unset env(GDBHISTSIZE)
|
|
||||||
}
|
|
||||||
set timeout $oldtimeout1
|
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
|
Reference in New Issue
Block a user