Initial check-in of openocd-0.7.0 as it can be downloaded from http://sourceforge.net/projects/openocd/files/openocd/0.7.0/ Any modifications will follow. Change-Id: I6949beaefd589e046395ea0cb80f4e1ab1654d55
118 lines
6.4 KiB
Plaintext
118 lines
6.4 KiB
Plaintext
source [file dirname [info script]]/testing.tcl
|
|
needs constraint jim; needs cmd package
|
|
package require errors
|
|
# Make this a proc so that the line numbers don't have to change
|
|
proc main {} {
|
|
set id1 0
|
|
foreach type {badcmd badvar error interpbadvar interpbadcmd package source badpackage returncode} {
|
|
set id2 0
|
|
incr id1
|
|
foreach method {call uplevel eval evalstr} {
|
|
incr id2
|
|
set exp ""
|
|
if {[info exists ::expected(err-$id1.$id2)]} {
|
|
set exp $::expected(err-$id1.$id2)
|
|
}
|
|
test err-$id1.$id2 "Stacktrace on error type $type, method $method" {
|
|
set rc [catch {error_caller $type $method} msg]
|
|
#puts "\n-----------------\n$type, $method\n[errorInfo $msg]\n\n"
|
|
if {$::SHOW_EXPECTED} { puts stderr "\terr-$id1.$id2 {[list $rc $msg [info stacktrace]]}" }
|
|
|
|
list $rc $msg [info stacktrace]
|
|
} $exp
|
|
}
|
|
}
|
|
proc unknown {args} {
|
|
error "from unknown"
|
|
}
|
|
|
|
test err-10.1 "Stacktrace on error from unknown (badcmd, call)" {
|
|
set rc [catch {error_caller badcmd call} msg]
|
|
#puts stderr "err-10.1\n[errorInfo $msg]\n"
|
|
#puts stderr "\terr-10.1 {[list $rc $msg [info stacktrace]]}"
|
|
|
|
list $rc $msg [info stacktrace]
|
|
} {1 {from unknown} {{} stacktrace.test 26 {} errors.tcl 6 error_generator errors.tcl 44 error_caller stacktrace.test 30}}
|
|
|
|
rename unknown ""
|
|
|
|
set a {one}
|
|
set b [list 1 \
|
|
2 \
|
|
3]
|
|
set c {two}
|
|
set d "list 1
|
|
2
|
|
3"
|
|
set e {three}
|
|
set f "list 1 \
|
|
2 \
|
|
3"
|
|
set g {four}
|
|
|
|
test source-1.1 "Basic line numbers" {
|
|
info source $a
|
|
} {stacktrace.test 39}
|
|
|
|
test source-1.2 "Line numbers after command with escaped newlines" {
|
|
info source $c
|
|
} {stacktrace.test 43}
|
|
test source-1.3 "Line numbers after string with newlines" {
|
|
info source $e
|
|
} {stacktrace.test 47}
|
|
test source-1.4 "Line numbers after string with escaped newlines" {
|
|
info source $g
|
|
} {stacktrace.test 51}
|
|
}
|
|
|
|
set expected {
|
|
err-1.1 {1 {invalid command name "bogus"} {{} errors.tcl 6 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-1.2 {1 {invalid command name "bogus"} {{} errors.tcl 6 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-1.3 {1 {invalid command name "bogus"} {{} errors.tcl 6 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-1.4 {1 {invalid command name "bogus"} {{} errors.tcl 6 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-2.1 {1 {can't read "bogus": no such variable} {{} errors.tcl 9 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-2.2 {1 {can't read "bogus": no such variable} {{} errors.tcl 9 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-2.3 {1 {can't read "bogus": no such variable} {{} errors.tcl 9 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-2.4 {1 {can't read "bogus": no such variable} {{} errors.tcl 9 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-3.1 {1 bogus {{} errors.tcl 12 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-3.2 {1 bogus {{} errors.tcl 12 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-3.3 {1 bogus {{} errors.tcl 12 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-3.4 {1 bogus {{} errors.tcl 12 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-4.1 {1 {can't read "bogus": no such variable} {{} errors.tcl 15 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-4.2 {1 {can't read "bogus": no such variable} {{} errors.tcl 15 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-4.3 {1 {can't read "bogus": no such variable} {{} errors.tcl 15 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-4.4 {1 {can't read "bogus": no such variable} {{} errors.tcl 15 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-5.1 {1 {can't read "bogus": no such variable} {{} errors.tcl 18 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-5.2 {1 {can't read "bogus": no such variable} {{} errors.tcl 18 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-5.3 {1 {can't read "bogus": no such variable} {{} errors.tcl 18 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-5.4 {1 {can't read "bogus": no such variable} {{} errors.tcl 18 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-6.1 {1 {from dummyproc
|
|
Can't load package dummy} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 21 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-6.2 {1 {from dummyproc
|
|
Can't load package dummy} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 21 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-6.3 {1 {from dummyproc
|
|
Can't load package dummy} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 21 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-6.4 {1 {from dummyproc
|
|
Can't load package dummy} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 21 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-7.1 {1 {from dummyproc} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 24 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-7.2 {1 {from dummyproc} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 24 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-7.3 {1 {from dummyproc} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 24 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-7.4 {1 {from dummyproc} {{} dummy.tcl 3 dummyproc dummy.tcl 6 {} errors.tcl 24 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-8.1 {1 {Can't load package bogus} {{} errors.tcl 27 error_generator errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-8.2 {1 {Can't load package bogus} {{} errors.tcl 27 error_generator errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-8.3 {1 {Can't load package bogus} {{} errors.tcl 27 error_generator errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-8.4 {1 {Can't load package bogus} {{} errors.tcl 27 error_generator errors.tcl 53 error_caller stacktrace.test 17}}
|
|
err-9.1 {1 failure {{} errors.tcl 44 error_caller stacktrace.test 17}}
|
|
err-9.2 {1 failure {{} errors.tcl 47 error_caller stacktrace.test 17}}
|
|
err-9.3 {1 failure {{} errors.tcl 50 error_caller stacktrace.test 17}}
|
|
err-9.4 {1 failure {{} errors.tcl 53 error_caller stacktrace.test 17}}
|
|
}
|
|
|
|
# Set this to output expected results to stderr
|
|
# in a form which can be pasted into 'expected' below
|
|
set SHOW_EXPECTED 0
|
|
|
|
main
|
|
|
|
testreport
|