2012-02-02 Pedro Alves <palves@redhat.com>

* gdb.base/term.exp: Rewrite.
	* gdb.base/term.c: New.
This commit is contained in:
Pedro Alves 2012-02-02 18:07:58 +00:00
parent da84f473b7
commit 5f8cefd757
3 changed files with 45 additions and 36 deletions

View file

@ -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

View 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;
}

View file

@ -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"