diff options
Diffstat (limited to 'gdb/testsuite/gdb.gdbtk/srcwin3.test')
-rw-r--r-- | gdb/testsuite/gdb.gdbtk/srcwin3.test | 789 |
1 files changed, 0 insertions, 789 deletions
diff --git a/gdb/testsuite/gdb.gdbtk/srcwin3.test b/gdb/testsuite/gdb.gdbtk/srcwin3.test deleted file mode 100644 index b9a1617bb5c..00000000000 --- a/gdb/testsuite/gdb.gdbtk/srcwin3.test +++ /dev/null @@ -1,789 +0,0 @@ -# Copyright (C) 1999, 2001 Red Hat, 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 2 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, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -# Please email any bugs, comments, and/or additions to this file to: -# bug-gdb@prep.ai.mit.edu - -# This file was written by Martin Hunt (hunt@cygnus.com) - -########################################################### -# same as srcwin.test, except test debugging executables # -# build without "-g" # -########################################################### - -# Read in the standard defs file - -if {![gdbtk_read_defs]} { - break -} - -global objdir srcdir - -##### ##### -# # -# SECTION 1: Mode Tests # -# # -##### ##### - -# Load the test executable -set program [file join $objdir list] -if {[catch {gdbtk_test_file $program} t]} { - # This isn't a test case, since if this fails, we're hosed. - gdbtk_test_error "loading \"$program\": $t" -} - -set srcwin [ManagedWin::open SrcWin] -set stw [$srcwin test_get twin] -set twin [$stw test_get twin] -set statbar [$srcwin test_get _statbar] - -# get things started -gdb_cmd "break main" -gdbtk_test_run - -# Test: srcwin3-1.1 -# Desc: Check for something in source window -gdbtk_test srcwin3-1.1 "source window has contents" { - set r 0 - set source(main) [$twin get 1.0 end] - if {$source(main) == ""} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.2 -# Desc: source->assembly mode change -gdbtk_test srcwin3-1.2 "source->assembly mode change" { - set r 0 - $srcwin mode "" ASSEMBLY - set twin [$stw test_get twin] - if {$source(main) != [$twin get 1.0 end]} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.3 -# Desc: assembly->mixed mode change -gdbtk_test srcwin3-1.3 "assembly->mixed mode change" { - set r 0 - $srcwin mode "" MIXED - set twin [$stw test_get twin] - if {$source(main) != [$twin get 1.0 end]} {set r -1} - if {[$statbar.mode get] != "MIXED"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.4 -# Desc: mixed->src+asm mode change -gdbtk_test srcwin3-1.4 "mixed->src+asm mode change" { - set r 0 - # mode change may fail if fallover to ASSEMBLY fails - if {[catch {$srcwin mode "" SRC+ASM}]} { set r -5 } - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.5 -# Desc: src+asm->source mode change -gdbtk_test srcwin3-1.5 "src+asm->source mode change" { - set r 0 - $srcwin mode "" SOURCE - set twin [$stw test_get twin] - if {[$stw test_get bwin] != ""} {set r -2} - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -3} - set r -} {0} - -# Test: srcwin3-1.6 -# Desc: source->mixed mode change -gdbtk_test srcwin3-1.6 "source->mixed mode change" { - set r 0 - $srcwin mode "" MIXED - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "MIXED"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.7 -# Desc: mixed->source mode change -gdbtk_test srcwin3-1.7 "mixed->source mode change" { - set r 0 - $srcwin mode "" SOURCE - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.8 -# Desc: source->src+asm mode change -gdbtk_test srcwin3-1.8 "source->src+asm mode change" { - set r 0 - # mode change may fail if fallover to ASSEMBLY fails - if {[catch {$srcwin mode "" SRC+ASM}]} { set r -5 } - set twin [$stw test_get twin] - set bwin [$stw test_get bwin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {$bwin != ""} {set r -2} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -3} - set r -} {0} - -# Test: srcwin3-1.9 -# Desc: src+asm->assembly mode change -gdbtk_test srcwin3-1.9 "src+asm->assembly mode change" { - set r 0 - $srcwin mode "" ASSEMBLY - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.10 -# Desc: assembly->src+asm mode change -gdbtk_test srcwin3-1.10 "assembly->src+asm mode change" { - set r 0 - # mode change may fail if fallover to ASSEMBLY fails - if {[catch {$srcwin mode "" SRC+ASM}]} { set r -5 } - set twin [$stw test_get twin] - set bwin [$stw test_get bwin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {$bwin != ""} {set r -2} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -3} - set r -} {0} - -# Test: srcwin3-1.11 -# Desc: src+asm->mixed mode change -gdbtk_test srcwin3-1.11 "src+asm->mixed mode change" { - set r 0 - $srcwin mode "" MIXED - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "MIXED"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.12 -# Desc: mixed->assembly mode change -gdbtk_test srcwin3-1.12 "mixed->assembly mode change" { - set r 0 - $srcwin mode "" ASSEMBLY - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - -# Test: srcwin3-1.13 -# Desc: assembly->source mode change -gdbtk_test srcwin3-1.13 "assembly->source mode change" { - set r 0 - $srcwin mode "" SOURCE - set twin [$stw test_get twin] - if {[$twin get 1.0 end] != $source(main)} {set r -1} - if {[$statbar.mode get] != "ASSEMBLY"} {set r -2} - set r -} {0} - - -##### ##### -# # -# SECTION 2: Basic Operations # -# # -##### ##### - -# Test: srcwin3-2.2 -# Desc: check contents of function combobox -# There won't be any because we have no debug info -gdbtk_test srcwin3-2.2 "check contents of function combobox" { - set names [$statbar.func list get 0 end] - llength $names -} {0} - -# Test: srcwin3-2.3 -# Desc: goto filename - this won't work, but should leave things as they were -gdbtk_test srcwin3-2.3 "goto filename" { - set func [$srcwin test_get _name 1] - $func "" list1.c - set twin [$stw test_get twin] - string compare $source(main) [$twin get 1.0 end] -} {0} - -# Test: srcwin3-2.6 -# Desc: goto function -gdbtk_test srcwin3-2.6 "goto function bar" { - $srcwin goto_func "" bar - set r 0 - set twin [$stw test_get twin] - set source(bar) [$twin get 1.0 end] - - if {$source(bar) == $source(main)} {set r -1000} - - # now get a dump of all tags and check that only one line is - # marked BROWSE_TAG and no lines are STACK_TAG or PC_TAG. - - # We know that list1.c should have BROWSE_TAG set at index 5.2 - # for function "bar". If list1.c is changed or the layout of the source - # window is changed, this must be updated. - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "BROWSE_TAG"} { - incr r - } - if {$v == "STACK_TAG"} { incr r 10} - if {$v == "PC_TAG"} { incr r 100} - } - } - } else { - set r -1 - } - - if {$r == 1} { - # things are OK so far, so just verify the function name is displayed - # in the combobox entry field. - set names [$statbar.func get] - if {[string compare $names "bar"]} {set r -2} - } - set r -} {1} - -# Test: srcwin3-2.7 -# Desc: goto function "oof". This tests that the correct line is highlighted -# with BROWSE_TAG and no other lines are highlighted. It also checks that -# the combobox has the correct function name in it. - -gdbtk_test srcwin3-2.7 "goto function oof" { - $srcwin goto_func "" oof - set r 0 - - set twin [$stw test_get twin] - set source(oof) [$twin get 1.0 end] - - if {$source(bar) == $source(oof)} {set r -1000} - if {$source(oof) == $source(main)} {set r -2000} - - # now get a dump of all tags and check that only one line is - # marked BROWSE_TAG and no lines are STACK_TAG or PC_TAG. - - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "BROWSE_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "PC_TAG"} {incr r 100} - } - } - } else { - set r -1 - } - - if {$r == 1} { - # things are OK so far, so just verify the function name is displayed - # in the combobox entry field. - set names [$statbar.func get] - if {[string compare $names "oof"]} {set r -2} - } - set r -} {1} - -# Test: srcwin3-2.8 -# Desc: This test issues a nexti command while browsing oof. -# It should jump back to main -gdbtk_test srcwin3-2.8 "nexti while browsing" { - gdb_immediate "nexti" 1 - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of function combobox - if {$func != "main"} {set r -2} - if {$name != ""} {set r -1} - - # check that correct file is displayed - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(main) $a]} {set r -3} - - # check for PC_TAG - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Test: srcwin3-2.11 -# Desc: This test issues a break and a continue -gdbtk_test srcwin3-2.11 "set BP and continue" { - gdb_immediate "break oof" 1 - gdb_immediate "continue" 1 - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "oof"} {set r -2} - - # check that the correct file is displayed - # we must clear the breakpoint first so it doesn't mess up the - # comparison... - gdb_immediate "clear oof" 1 - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(oof) $a]} {set r -3} - - # check for PC_TAG - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -##### ##### -# # -# SECTION 3: Stack Operations # -# # -##### ##### - -# Test: srcwin3-3.1 -# Desc: This tests "stack up" -gdbtk_test srcwin3-3.1 "stack up (1)" { - $srcwin stack up - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "long_line"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set source(long_line) [$twin get 1.0 end] - if {![string compare $source(long_line) $source(oof)]} {set r -3} - - # check for PC_TAG and STACK_TAG on correct lines - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} {incr r 5} - if {$v == "STACK_TAG"} {incr r} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Test: srcwin3-3.2 -# Desc: Another "stack up" test -gdbtk_test srcwin3-3.2 "stack up (2)" { - $srcwin stack up - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "bar"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(bar) $a]} {set r -3} - - # check for PC_TAG and STACK_TAG on correct lines - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} { - set r -100 - } - if {$v == "STACK_TAG"} { - incr r - } - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Test: srcwin3-3.3 -# Desc: Another "stack up" test -gdbtk_test srcwin3-3.3 "stack up (3)" { - $srcwin stack up - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "foo"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set source(foo) [$twin get 1.0 end] - if {![string compare $source(foo) $source(bar)]} {set r -3} - - # check for PC_TAG and STACK_TAG on correct lines - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "STACK_TAG"} { - incr r - } - if {$v == "PC_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Test: srcwin3-3.4 -# Desc: Another "stack up" test -gdbtk_test srcwin3-3.4 "stack up (4)" { - $srcwin stack up - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "main"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(main) $a]} {set r -3} - - # check for STACK_TAG - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "STACK_TAG"} { - incr r - } - if {$v == "PC_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Disabled for now because there are different correct results. -# Test should be rewritten to include those. -# Test: srcwin3-3.5 -# Desc: "stack up" when we are at the top -#gdbtk_test srcwin3-3.5 "stack up when at the top" { -# $srcwin stack up -# set r 0 -# set name [$statbar.name get] -# set func [$statbar.func get] - - # check contents of name and function comboboxes -# if {$name != ""} {set r -1} -# if {$func != "main"} {set r -2} - - # check that the correct file is displayed -# set twin [$stw test_get twin] -# set a [$twin get 1.0 end] -# if {[string compare $source(main) $a]} {set r -3} - - # check for STACK_TAG -# if {$r == 0} { -# if {![catch {set z [$twin dump -tag 1.0 end]}]} { -# foreach {k v i} $z { -# if {$k == "tagon"} { -# if {$v == "STACK_TAG"} { -# incr r -# } -# if {$v == "PC_TAG"} {incr r 10} -# if {$v == "BROWSE_TAG"} {incr r 100} -# } -# } -# } else { -# set r -4 -# } -# } -# set r -#} {1} - -# Test: srcwin3-3.6 -# Desc: "stack down" test -gdbtk_test srcwin3-3.6 "stack down" { - $srcwin stack down - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "foo"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(foo) $a]} {set r -3} - - # check for PC_TAG and STACK_TAG on correct lines - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "STACK_TAG"} { - incr r - } - if {$v == "PC_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Test: srcwin3-3.7 -# Desc: "stack bottom" test -gdbtk_test srcwin3-3.7 "stack bottom" { - $srcwin stack bottom - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "oof"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(oof) $a]} {set r -3} - - # check for PC_TAG on correct line - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# Test: srcwin3-3.8 -# Desc: "stack down" when at bottom -gdbtk_test srcwin3-3.8 "stack down when at bottom" { - $srcwin stack down - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "oof"} {set r -2} - - # check that the correct file is displayed - set twin [$stw test_get twin] - set a [$twin get 1.0 end] - if {[string compare $source(oof) $a]} {set r -3} - - # check for PC_TAG on correct line - if {$r == 0} { - if {![catch {set z [$twin dump -tag 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } - } - } else { - set r -4 - } - } - set r -} {1} - -# 4.1 bp, multiple, balloon, etc - -# Test: srcwin3-4.1 -# Desc: Set BP in another file. Tests bp and cache functions -gdbtk_test srcwin3-4.1 "set BP in another file" { - gdb_immediate "break foo" 1 - $srcwin goto_func "" foo - set r 0 - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "foo"} {set r -2} - - set twin [$stw test_get twin] - - # check for BROWSE_TAG and BP image - if {$r == 0} { - if {![catch {set z [$twin dump 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "BROWSE_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "PC_TAG"} {incr r 100} - } elseif {$k == "image"} { - incr r - } - } - } else { - set r -4 - } - } - - if {$r == 2} { - # clear BP and compare with previous contents. This should succeed, - gdb_immediate "clear foo" 1 - set a [$twin get 1.0 end] - if {[string compare $source(foo) $a]} {set r -3} - } - - set r -} {2} - -# Test: srcwin3-4.2 -# Desc: Test temporary BP -gdbtk_test srcwin3-4.2 "temporary BP" { - set r 0 - if {[catch {gdb_immediate "tbreak foo" 1} msg]} { - set r -500 - } - set name [$statbar.name get] - set func [$statbar.func get] - - # check contents of name and function comboboxes - if {$name != ""} {set r -1} - if {$func != "foo"} {set r -2} - - set twin [$stw test_get twin] - - # check for BROWSE_TAG and BP image on correct line - if {$r == 0} { - if {![catch {set z [$twin dump 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "BROWSE_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "PC_TAG"} {incr r 100} - } elseif {$k == "image"} { - incr r - } - } - } else { - set r -4 - } - } - - gdb_immediate "continue" 1 - - # now check for PC_TAG and no image - if {$r == 2} { - if {![catch {set z [$twin dump 1.0 end]}]} { - foreach {k v i} $z { - if {$k == "tagon"} { - if {$v == "PC_TAG"} { - incr r - } - if {$v == "STACK_TAG"} {incr r 10} - if {$v == "BROWSE_TAG"} {incr r 100} - } elseif {$k == "image"} { - set r -200 - } - } - } else { - set r -4 - } - } - - set r -} {3} - -gdbtk_test_done |