Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Fitzsimmons <fitzsim@redhat.com>2002-06-19 02:39:17 +0400
committerThomas Fitzsimmons <fitzsim@redhat.com>2002-06-19 02:39:17 +0400
commitc9ca68d7b5f380070f9c4b75d953bcd5920984e7 (patch)
tree7d1c2265fe88934f972f9c540996f93ab26457d4 /newlib/testsuite
parentfb921031414b63aa7fd1dcbe1d088c43a8485f22 (diff)
* testsuite/lib/passfail.exp (newlib_pass_fail_all): New
procedure. (newlib_pass_fail): Change to compile and run only one file. * testsuite/newlib.locale/locale.exp: Use new newlib_pass_fail_all procedure. * testsuite/newlib.string/string.exp: Likewise.
Diffstat (limited to 'newlib/testsuite')
-rw-r--r--newlib/testsuite/lib/passfail.exp57
-rw-r--r--newlib/testsuite/newlib.locale/locale.exp4
-rw-r--r--newlib/testsuite/newlib.string/string.exp4
3 files changed, 39 insertions, 26 deletions
diff --git a/newlib/testsuite/lib/passfail.exp b/newlib/testsuite/lib/passfail.exp
index 8a44d274d..0a01f4816 100644
--- a/newlib/testsuite/lib/passfail.exp
+++ b/newlib/testsuite/lib/passfail.exp
@@ -4,36 +4,49 @@
# is freely granted, provided that this notice is preserved.
#
-# newlib_pass_fail compiles and runs all the source files in the test
-# directory that are not included in the check_output_tests list.
-# check_output_tests lists the sources' basenames.
+# newlib_pass_fail_all compiles and runs all the source files in the
+# test directory. If flag is -x, then the sources whose basenames are
+# listed in exclude_list are not compiled and run.
-proc newlib_pass_fail { check_output_tests } {
+proc newlib_pass_fail_all { flag exclude_list } {
global srcdir objdir subdir runtests
- foreach testcase [glob -nocomplain $srcdir/$subdir/*.c] {
+ foreach fullsrcfile [glob -nocomplain $srcdir/$subdir/*.c] {
+ set srcfile "[file tail $fullsrcfile]"
# If we're only testing specific files and this isn't one of them, skip it.
- if ![runtest_file_p $runtests $testcase] then {
+ if ![runtest_file_p $runtests $srcfile] then {
continue
}
- # Exclude tests which require their output to be checked
- if {[lsearch $check_output_tests "[file tail $testcase]"] != -1} then {
- continue
+ # Exclude tests listed in exclude_list.
+ if { $flag == "-x" } then {
+ if {[lsearch $exclude_list "$srcfile"] != -1} then {
+ continue
+ }
}
+ newlib_pass_fail "$srcfile"
+ }
+}
- set test_driver "$objdir/testsuite/[file tail [file rootname $testcase].x]"
-
- set comp_output [newlib_target_compile "$testcase" "$test_driver" "executable" ""]
-
- if { $comp_output != "" } {
- fail "Failed to compile $testcase.\n"
- fail "$testcase"
- } else {
- pass "Compiled $testcase.\n"
- set result [newlib_load $test_driver ""]
- set status [lindex $result 0]
- $status "$testcase"
- }
+# newlib_pass_fail takes the basename of a test source file, which it
+# compiles and runs.
+
+proc newlib_pass_fail { srcfile } {
+ global srcdir objdir subdir
+
+ set fullsrcfile "$srcdir/$subdir/$srcfile"
+
+ set test_driver "$objdir/testsuite/[file rootname $srcfile].x"
+
+ set comp_output [newlib_target_compile "$fullsrcfile" "$test_driver" "executable" ""]
+
+ if { $comp_output != "" } {
+ fail "Failed to compile $fullsrcfile.\n"
+ fail "$fullsrcfile"
+ } else {
+ pass "Compiled $fullsrcfile.\n"
+ set result [newlib_load $test_driver ""]
+ set status [lindex $result 0]
+ $status "$fullsrcfile"
}
}
diff --git a/newlib/testsuite/newlib.locale/locale.exp b/newlib/testsuite/newlib.locale/locale.exp
index 77aa719fb..9d6f4dd64 100644
--- a/newlib/testsuite/newlib.locale/locale.exp
+++ b/newlib/testsuite/newlib.locale/locale.exp
@@ -6,8 +6,8 @@
load_lib passfail.exp
-set nonpassfailtests {
+set exclude_list {
"UTF-8.c"
}
-newlib_pass_fail $nonpassfailtests
+newlib_pass_fail_all -x $exclude_list
diff --git a/newlib/testsuite/newlib.string/string.exp b/newlib/testsuite/newlib.string/string.exp
index 2b602960a..cd5d7d689 100644
--- a/newlib/testsuite/newlib.string/string.exp
+++ b/newlib/testsuite/newlib.string/string.exp
@@ -6,7 +6,7 @@
load_lib passfail.exp
-set nonpassfailtests {
+set exclude_list {
}
-newlib_pass_fail $nonpassfailtests
+newlib_pass_fail_all -x $exclude_list