2012-02-02 Pedro Alves <palves@redhat.com>
* gdb.base/term.exp: Rewrite. * gdb.base/term.c: New.
This commit is contained in:
parent
da84f473b7
commit
5f8cefd757
3 changed files with 45 additions and 36 deletions
|
@ -1,3 +1,8 @@
|
|||
2012-02-02 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* gdb.base/term.exp: Rewrite.
|
||||
* gdb.base/term.c: New.
|
||||
|
||||
2012-02-02 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* gdb.base/default.exp (run "r" abbreviation, run): Add
|
||||
|
|
21
gdb/testsuite/gdb.base/term.c
Normal file
21
gdb/testsuite/gdb.base/term.c
Normal file
|
@ -0,0 +1,21 @@
|
|||
/* This testcase is part of GDB, the GNU debugger.
|
||||
|
||||
Copyright 2012 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/>. */
|
||||
|
||||
int main ()
|
||||
{
|
||||
return 0;
|
||||
}
|
|
@ -14,50 +14,33 @@
|
|||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
# This file was written by Rob Savoye. (rob@cygnus.com)
|
||||
|
||||
# Don't try this for remote targets.
|
||||
if [is_remote target] then {
|
||||
continue
|
||||
}
|
||||
|
||||
if [target_info exists noargs] then {
|
||||
verbose "Skipping term.exp because of noargs."
|
||||
return
|
||||
}
|
||||
|
||||
gdb_start
|
||||
|
||||
#
|
||||
# test running programs
|
||||
#
|
||||
|
||||
if { [prepare_for_testing term.exp term run.c] } {
|
||||
if { [prepare_for_testing term.exp term term.c] } {
|
||||
return -1
|
||||
}
|
||||
|
||||
gdb_test_no_output "set print sevenbit-strings"
|
||||
gdb_test_no_output "set print address off"
|
||||
gdb_test_no_output "set width 0"
|
||||
# Once before running the program.
|
||||
gdb_test "info terminal" \
|
||||
"No saved terminal information.*" \
|
||||
"test info terminal"
|
||||
|
||||
gdb_test "info terminal" "No saved terminal information.*" "test info terminal"
|
||||
gdb_run_cmd 5
|
||||
gdb_expect {
|
||||
-re ".*120.*$inferior_exited_re normally.*$gdb_prompt $" {
|
||||
gdb_test "info terminal" "No saved terminal information.*" "test info terminal #2"
|
||||
}
|
||||
default {
|
||||
fail "term.exp, factorial didn't run to completion for info terminal"
|
||||
}
|
||||
if ![runto_main] then {
|
||||
fail "Can't run to main"
|
||||
return 0
|
||||
}
|
||||
|
||||
# In mid-execution
|
||||
gdb_breakpoint main
|
||||
gdb_run_cmd 5
|
||||
gdb_expect {
|
||||
-re ".*Breakpoint \[0-9\]+,.*main.*if .argc != 2.*$gdb_prompt $" {
|
||||
gdb_test "info terminal" "Inferior's terminal status .currently saved by GDB.:.*" "info terminal at breakpoint"
|
||||
}
|
||||
-re ".*$gdb_prompt $" { fail "info terminal at breakpoint" }
|
||||
timeout { fail "(timeout) info terminal at breakpoint" }
|
||||
}
|
||||
# Once while the program is running and stopped.
|
||||
gdb_test "info terminal" \
|
||||
"Inferior's terminal status .currently saved by GDB.:.*" \
|
||||
"info terminal at breakpoint"
|
||||
|
||||
gdb_continue_to_end
|
||||
|
||||
# One last time after the program having exited.
|
||||
gdb_test "info terminal" \
|
||||
"No saved terminal information.*" \
|
||||
"test info terminal #2"
|
||||
|
|
Loading…
Reference in a new issue