123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- # every test should always be run and always return some status.
- # so, if we lose sync with a multi-test program, aborted will be used
- # to flag the remainder of the tests as untested.
- #set aborted 0
- # only match with color codes since "failed" / "OK" might otherwise
- # be part of the output...
- #set color 1
- set config_h [open "../config.h" "r"]
- set config_h_text [read $config_h]
- close $config_h
- set i [string first "#define HAVE_IPV6" $config_h_text]
- if { $i >= 0 } {
- set have_ipv6 1
- } else {
- set have_ipv6 0
- }
- send_user "IPv6 enabled: $have_ipv6\n"
- set xfail 0
- proc onesimple { test_name match } {
- global verbose
- global aborted
- global testprefix
- if { $aborted > 0 } {
- untested "$testprefix$test_name"
- return
- }
- if { $verbose > 0 } {
- send_user "$testprefix$test_name$note\n"
- }
- expect {
- "$match" { pass "$testprefix$test_name"; }
- eof { fail "$testprefix$test_name"; set aborted 1; }
- timeout { unresolved "$testprefix$test_name"; set aborted 1; }
- }
- }
- proc onetest { test_name note start } {
- global aborted
- global testprefix
- global verbose
- global color
- global xfail
- if { $aborted > 0 } {
- untested "$testprefix$test_name"
- return
- }
- if { $verbose > 0 } {
- send_user "$testprefix$test_name$note\n"
- }
- expect {
- "$start" { }
- eof { unresolved "$testprefix$test_name"; set aborted 1; }
- timeout { unresolved "$testprefix$test_name"; set aborted 1; }
- }
- if { $aborted > 0 } {
- send_user "sync failed: $testprefix$test_name$note -- $testprefix aborted!\n"
- return
- }
- if { $color } {
- set pat "(32mOK|31mfailed)"
- } else {
- set pat "(OK|failed)"
- }
- expect {
- # need this because otherwise expect will skip over a "failed" and
- # grab the next "OK" (or the other way around)
- -re "$pat" {
- if { "$expect_out(0,string)" == "32mOK" || "$expect_out(0,string)" == "OK" } {
- pass "$testprefix$test_name"
- } else {
- if { $xfail } {
- xfail "$testprefix$test_name"
- } else {
- fail "$testprefix$test_name"
- }
- }
- return
- }
- eof { unresolved "$testprefix$test_name"; set aborted 1; }
- timeout { unresolved "$testprefix$test_name"; set aborted 1; }
- }
- if { $aborted > 0 } {
- send_user "failed: $testprefix$test_name$note -- $testprefix aborted!\n"
- return
- }
- }
- proc headerline { line } {
- global aborted
- if { $aborted > 0 } { return; }
- expect {
- $line { return; }
- eof { send_user "numbering mismatch!\n"; set aborted 1; }
- timeout { send_user "numbering mismatch!\n"; set aborted 1; }
- }
- }
- proc simpletest { start } {
- onetest "$start" "" "$start"
- }
- proc simpletest_nov6 { start } {
- global have_ipv6
- global xfail
- set xfail [expr 1-$have_ipv6]
- onetest "$start" "" "$start"
- set xfail 0
- }
|