Blame testsuite/runtest.all/utils.test

Packit 62fe53
# Test procedures in lib/utils.exp.
Packit 62fe53
Packit 62fe53
set srcdir [lindex $argv 0]
Packit 62fe53
set subdir [lindex $argv 1]
Packit 62fe53
set objdir [lindex $argv 2]
Packit 62fe53
Packit 62fe53
if [ file exists $objdir/setval.tmp ] {
Packit 62fe53
    source $objdir/setval.tmp
Packit 62fe53
} else {
Packit 62fe53
    puts "ERROR: $objdir/setval.tmp doesn't exist"
Packit 62fe53
}
Packit 62fe53
if [ file exists $srcdir/$subdir/default_procs.tcl ] {
Packit 62fe53
    source "$srcdir/$subdir/default_procs.tcl"
Packit 62fe53
} else {
Packit 62fe53
    puts "ERROR: $srcdir$subdir/default_procs.tcl doesn't exist"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
set file $srcdir/../lib/utils.exp
Packit 62fe53
if [ file exists $file] {
Packit 62fe53
    source $file
Packit 62fe53
} else {
Packit 62fe53
    puts "ERROR: $file doesn't exist"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test getdirs:
Packit 62fe53
#
Packit 62fe53
if [lib_pat_test "getdirs" "${srcdir}/runtest.all" "runtest.all/topdir" ] {
Packit 62fe53
    puts "FAILED: getdirs toplevel, no arguments"
Packit 62fe53
} else {
Packit 62fe53
    puts "PASSED: getdirs toplevel, no arguments"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
if [lib_pat_test "getdirs" "${srcdir}/runtest.all top*" "runtest.all/topdir" ] {
Packit 62fe53
    puts "FAILED: getdirs toplevel, one subdir"
Packit 62fe53
} else {
Packit 62fe53
    puts "PASSED: getdirs toplevel, one subdir"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
if [lib_pat_test "getdirs" "${srcdir}/runtest.all/topdir" "subdir1*subdir2" ] {
Packit 62fe53
    puts "FAILED: getdirs toplevel, two subdirs"
Packit 62fe53
} else {
Packit 62fe53
    puts "PASSED: getdirs toplevel, two subdirs"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test find:
Packit 62fe53
#
Packit 62fe53
if [string match "*/subdir2/subfile2" "[find ${srcdir}/runtest.all/topdir/subdir2 sub*]"] {
Packit 62fe53
    puts "PASSED: find, only one level deep"
Packit 62fe53
} else {
Packit 62fe53
    puts "FAILED: find, only one level deep"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
if [regexp ".*/subdir1/subsubdir1/subsubfile1( |$)" "[find ${srcdir}/runtest.all/topdir/subdir1 sub*]"] {
Packit 62fe53
    puts "PASSED: find, two levels deep"
Packit 62fe53
} else {
Packit 62fe53
    puts "FAILED: find, two  levels deep"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Environment varible utility tests.
Packit 62fe53
#
Packit 62fe53
Packit 62fe53
if [info exists env(TESTRUN)] {
Packit 62fe53
    unset env(TESTRUN)
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test setenv:
Packit 62fe53
#
Packit 62fe53
setenv TESTRUN FooBar
Packit 62fe53
if [info exists env(TESTRUN)] {
Packit 62fe53
    if { $env(TESTRUN) == "FooBar" } {
Packit 62fe53
        pass "setenv, set an environment variable"
Packit 62fe53
    } else {
Packit 62fe53
        fail "setenv, set an environment variable
Packit 62fe53
    }
Packit 62fe53
} else {
Packit 62fe53
    fail "setenv, set an environment variable"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test getenv:
Packit 62fe53
#
Packit 62fe53
if [info exists env(TESTRUN)] {
Packit 62fe53
    if { [getenv TESTRUN] == "FooBar" } {
Packit 62fe53
        pass "getenv, get an environment variable"
Packit 62fe53
    } else {
Packit 62fe53
        fail "getenv, get an environment variable"
Packit 62fe53
    }
Packit 62fe53
} else {
Packit 62fe53
    untested "getenv, get an environment variable"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test unsetenv:
Packit 62fe53
#
Packit 62fe53
if [info exists env(TESTRUN)] {
Packit 62fe53
    unsetenv TESTRUN
Packit 62fe53
    if [info exists env(TESTRUN)] {
Packit 62fe53
        fail "unsetenv, unset an environment variable"
Packit 62fe53
    } else {
Packit 62fe53
        pass "unsetenv, unset an environment variable"
Packit 62fe53
    }
Packit 62fe53
} else {
Packit 62fe53
    untested "unsetenv, unset an environment variable"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test 'which' using a relative path.
Packit 62fe53
#
Packit 62fe53
if {[which ./config.status] != 0} {
Packit 62fe53
  pass "which, relative path to config.status"
Packit 62fe53
} else {
Packit 62fe53
  fail "which, relative path to config.status"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test 'which' using an absolute path.
Packit 62fe53
#
Packit 62fe53
if {[which [file join $objdir config.status]] != 0} {
Packit 62fe53
  pass "which, absolute path to config.status"
Packit 62fe53
} else {
Packit 62fe53
  fail "which, absolute path to config.status"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# Test 'which make'.
Packit 62fe53
#
Packit 62fe53
if {[which make] != 0} {
Packit 62fe53
  pass "which, make"
Packit 62fe53
} else {
Packit 62fe53
  pass "which, make"
Packit 62fe53
}
Packit 62fe53
Packit 62fe53
# grep args
Packit 62fe53
# diff file_1 file_2
Packit 62fe53
# runtest_file_p