aboutsummaryrefslogtreecommitdiff
path: root/libjava/classpath/testsuite/scheme/test.scm
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/classpath/testsuite/scheme/test.scm')
-rw-r--r--libjava/classpath/testsuite/scheme/test.scm164
1 files changed, 0 insertions, 164 deletions
diff --git a/libjava/classpath/testsuite/scheme/test.scm b/libjava/classpath/testsuite/scheme/test.scm
deleted file mode 100644
index 74b4b21..0000000
--- a/libjava/classpath/testsuite/scheme/test.scm
+++ /dev/null
@@ -1,164 +0,0 @@
-#!/usr/local/bin/guile -s
-!#
-
-; Guile/JNI/JVM Testing Framework
-;
-; Copyright (c) 1998 Free Software Foundation, Inc.
-; Written by Paul Fisher (rao@gnu.org)
-;
-; This program is free software; you can redistribute it and/or modify
-; it under the terms of the GNU General Public License as published by
-; the Free Software Foundation; either version 2 of the License, or
-; (at your option) any later version.
-;
-; This program is distributed in the hope that it will be useful,
-; but WITHOUT ANY WARRANTY; without even the implied warranty of
-; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-; GNU General Public License for more details.
-;
-; You should have received a copy of the GNU General Public License
-; along with this program; if not, write to the Free Software
-; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
-; USA.
-
-
-; log filenames
-(define verbose-log-file "classpath.log")
-(define summary-log-file "classpath.sum")
-
-; returns the number of times that ELEM appears in the toplevel of LS
-(define count
- (lambda (elem ls)
- (letrec
- ((count-it
- (lambda (ls acc)
- (cond
- ((null? ls) acc)
- ((equal? (car ls) elem) (count-it (cdr ls) (+ acc 1)))
- (else (count-it (cdr ls) acc))))))
- (count-it ls 0))))
-
-; returns a list of pairs containing an element of ELS along with the
-; number of times that element appears in LS
-(define build-result-count
- (lambda (els ls)
- (cond
- ((null? els) '())
- (else (cons (cons (car els) (count (car els) ls))
- (build-result-count (cdr els) ls))))))
-
-; soft port which sends output to both (current-output-port) and
-; the verbose-log-port
-(define screen-and-log-port
- (make-soft-port
- (vector
- (lambda (c)
- (cond
- ((char=? c #\newline)
- (newline (current-output-port))
- (newline verbose-log-port))
- (else
- (write c (current-output-port))
- (write c verbose-log-port))))
- (lambda (s)
- (display s (current-output-port))
- (display s verbose-log-port))
- (lambda ()
- (force-output (current-output-port))
- (force-output verbose-log-port))
- #f
- #f)
- "w"))
-
-; pretty prints the result of a single test
-(define display-test-summary
- (lambda (result port)
- (let ((name (car result))
- (code (cadr result))
- (msg (caddr result)))
- (display "Name : " port)
- (display name port)
- (newline port)
- (display "Result : " port)
- (display code port)
- (newline port)
- (display "Message : " port)
- (if (= (string-length msg) 0)
- (display "None" port)
- (display msg port))
- (newline port)
- (newline port))))
-
-; status message
-(define display-running
- (lambda (class port)
- (display "Running " port)
- (display class port)
- (display "..." port)
- (newline port)))
-
-; runs the test named CLASS
-(define run-test
- (lambda (class)
- (display-running class screen-and-log-port)
- (force-output verbose-log-port)
- (let ((result (test class)))
- (display-test-summary result screen-and-log-port)
- (write (cons class result) summary-log-port)
- (newline summary-log-port)
- (cadr result))))
-
-; run each and every test. each test is read from PORT
-; and delimited by a newline. returns a list of all test result codes
-(define parse-input-file
- (lambda (port)
- (letrec
- ((parse-line
- (lambda (line)
- (cond
- ((eof-object? (car line)) '())
- ((= (string-length (car line)) 0)
- (parse-line (read-line port 'split)))
- (else (cons (run-test (car line))
- (parse-line
- (read-line port 'split))))))))
- (parse-line (read-line port 'split)))))
-
-; pretty prints the result list
-(define display-results
- (lambda (results port)
- (display "Summary information..." port)
- (newline port)
- (letrec ((display-results-l
- (lambda (ls)
- (cond
- ((null? ls))
- (else
- (let ((res (car ls)))
- (display "# of " port)
- (display (car res) port)
- (display "'s " port)
- (display (cdr res) port)
- (newline port))
- (display-results-l (cdr ls)))))))
- (display-results-l results))))
-
-(if (batch-mode?)
- (if (> (length (command-line)) 1)
- (define input-port (open-input-file (cadr (command-line))))
- (error "filename listing tests to execute must be specified.")))
-
-; open up the log files
-(define verbose-log-port (open verbose-log-file
- (logior O_WRONLY O_CREAT O_TRUNC)))
-(define summary-log-port (open summary-log-file
- (logior O_WRONLY O_CREAT O_TRUNC)))
-
-; redirect stderr to the verbose log
-(dup verbose-log-port 2)
-
-; run the tests, and build the result table, and display the results
-(display-results (build-result-count
- '(PASS XPASS FAIL XPAIL UNRESOLVED
- UNSUPPORTED UNTESTED ERROR)
- (parse-input-file input-port)) screen-and-log-port)