blob: 1d9dc0b356f1a38955abd6ac9a5622348c817223 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# stap_run2.exp
#
# Simple script for testing multiple lines of exact output.
# stap_run2 TEST_NAME
# TEST_NAME is path to the current test
# Additional arguments are passed to stap as-is.
#
# global result_string must be set to the expected output
proc stap_run2 { TEST_NAME args } {
# zap the srcdir prefix
set test_file_name $TEST_NAME
set TEST_NAME [regsub {.*/testsuite/} $TEST_NAME ""]
if {[info procs installtest_p] != "" && ![installtest_p]} { untested $TEST_NAME; return }
set cmd [concat [stap_exec] $args $test_file_name]
catch {eval exec $cmd} res
set n 0
set expected [split $::result_string "\n"]
foreach line [split $res "\n"] {
if {![string equal $line [lindex $expected $n]]} {
fail "$TEST_NAME"
send_log "line [expr $n + 1]: expected \"[lindex $expected $n]\"\n"
send_log "Got \"$line\"\n"
return
}
incr n
}
pass "$TEST_NAME"
}
|