X-Git-Url: http://git.indexdata.com/cgi-bin?a=blobdiff_plain;f=test%2Fregression%2Fruntests;h=c12cd3c8791fb6ab5ea4d6751a8c5baf1d4431f4;hb=d48bccaed9308a737cdfa55ba555891d0ad85b87;hp=5def86c2658f92dbf13c614b280d6ec8d862243c;hpb=4b83264af4ba6c1cb101a597fa6d7bb144ab4023;p=cql-java-moved-to-github.git diff --git a/test/regression/runtests b/test/regression/runtests index 5def86c..c12cd3c 100755 --- a/test/regression/runtests +++ b/test/regression/runtests @@ -1,21 +1,24 @@ #!/usr/bin/perl -w -# $Id: runtests,v 1.6 2002-11-20 23:10:17 mike Exp $ use IO::File; use strict; +$ENV{CLASSPATH} .= ":../../src/main/java"; +$ENV{CLASSPATH} .= ":../../lib/cql-java.jar"; + if (@ARGV != 2) { print STDERR "Usage: $0 \n"; exit(1); } my $compiler = $ARGV[0]; -my $norman = $ARGV[1]; +my $norman = $ARGV[1]; # name of XML normaliser program +my($ntests, $ncorrect) = (0, 0); while () { my $sdir = $_; s@sections/@@; - next if /^CVS$/ || /^10$/; + next if /^CVS$/; print "testing section $_ - ", read_file("$sdir/name"), "\n"; while (<$sdir/*.cql>) { @@ -25,19 +28,25 @@ while () { my $afile = $qfile; $afile =~ s/\.cql$/.xcql/; print " query $_ - $query "; + $ntests++; my $correct = read_file("$norman < $afile |"); - my $tested = read_file("$compiler < $qfile | $norman |") - or print "\n *** test compiler exited non-zero\n"; - if ($tested eq $correct) { + my $tested = read_file("$compiler < $qfile | $norman |"); + if (!$tested) { + print "\n *** test compiler exited non-zero\n"; + } elsif ($tested eq $correct) { print "OK\n"; + $ncorrect++; } else { - print "\n *** different XCQL output\n"; - print "=== correct ===\n$correct"; + print "\n *** XCQL output differs from $afile\n"; print "=== tested ===\n$tested"; + print "=== end ===\n"; } } } +print sprintf("%d of %d passed: %d%%\n", + $ncorrect, $ntests, (100 * $ncorrect) / $ntests); + sub read_file { my($name) = @_;