diff options
author | Sergio Durigan Junior <sergiodj@redhat.com> | 2017-03-31 13:24:36 -0400 |
---|---|---|
committer | Sergio Durigan Junior <sergiodj@redhat.com> | 2017-04-28 20:29:20 -0400 |
commit | 45ce1b47e4490993b5c1a04f4a8acb62d9ec5039 (patch) | |
tree | 6e5b17242751395075b522d12c1681cf875ceaef /gdb/testsuite/gdb.base/info-program.exp | |
parent | a93866c8bfd4ad4b32c81e73e6a73aa9d831d350 (diff) | |
download | gdb-45ce1b47e4490993b5c1a04f4a8acb62d9ec5039.zip gdb-45ce1b47e4490993b5c1a04f4a8acb62d9ec5039.tar.gz gdb-45ce1b47e4490993b5c1a04f4a8acb62d9ec5039.tar.bz2 |
Make environ.exp run on all platforms (and create info-program.exp)
This has been on my TODO list for a while. There's a really old bug
about this (PR testsuite/8595), and there was no reason for
environ.exp to be specific for hppa* targets. So this patch removes
this constraint, modernizes the testcase, and cleans up some things.
Most of the tests remained, and some were rewritten (especially the
one that checks if "show environment" works, which is something kind
of hard to do).
As a bonus, I'm adding a separated info-program.exp file containing
all the tests related to "info program" that were present on
environ.exp.
Tested locally, everything still passes.
gdb/testsuite/ChangeLog:
2017-04-28 Sergio Durigan Junior <sergiodj@redhat.com>
PR testsuite/8595
* gdb.base/environ.exp: Make test available in all architectures.
Move bits related to "info program" testing to
gdb.base/info-program.exp. Rewrite tests to use the two new
procedures mentione below.
(test_set_show_env_var) New procedure.
(test_set_show_env_var_equal): Likewise.
* gdb.base/info-program.exp: New file.
Diffstat (limited to 'gdb/testsuite/gdb.base/info-program.exp')
-rw-r--r-- | gdb/testsuite/gdb.base/info-program.exp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.base/info-program.exp b/gdb/testsuite/gdb.base/info-program.exp new file mode 100644 index 0000000..bf8187c --- /dev/null +++ b/gdb/testsuite/gdb.base/info-program.exp @@ -0,0 +1,45 @@ +# Copyright 1997-2017 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/>. + +standard_testfile normal.c + +if { [prepare_for_testing "failed to prepare" $testfile $srcfile] } { + return -1 +} + +if { ![runto_main] } { + fail "can't run to main" + return -1 +} + +gdb_test "info program" "Program stopped at $hex\.\r\nIt stopped at breakpoint $decimal\.\r\nType \"info stack\" or \"info registers\" for more information\." \ + "info program after run to main" + +# We don't really care where this step lands, so long as it gets +# the inferior pushed off the breakpoint it's currently on... +gdb_test "next" "$decimal\t.*" "step before info program" + +gdb_test "info program" "Program stopped at $hex\.\r\nIt stopped after being stepped\.\r\nType \"info stack\" or \"info registers\" for more information\." \ + "info program after next" + +if { ![runto_main] } then { + fail "can't restart program" + return -1 +} + +delete_breakpoints + +gdb_test "info program" "Program stopped at $hex\.\r\nIt stopped at a breakpoint that has since been deleted\.\r\nType \"info stack\" or \"info registers\" for more information\." \ + "info program after deleting all breakpoints" |