source: core/perl/i2ptest.sh @ 0d330ca

Last change on this file since 0d330ca was 382cbb1, checked in by zzz <zzz@…>, 16 years ago

2005-02-03 smeghead

  • Added Ant buildfile in apps/fortuna for creating a custom Fortuna PRNG jar library from GNU Crypto's CVS HEAD sources.
  • Property mode set to 100644
File size: 3.7 KB
Line 
1#!/usr/bin/perl
2# Use the "--gij" parameter to run the tests against libgcj.
3# Use the "--sourcedir" parameter if running this from the source tree.
4# Yeah yeah, a lot of repetitive code here, but it works for now.
5
6$runtime = "java";
7$classpath = "../lib/i2p.jar:../lib/jbigi.jar";
8
9foreach $argv (@ARGV) {
10        if ($argv eq "--gij") {
11                $runtime = "gij";
12                print "\n*** Using gij + libgcj ***\n\n";
13        }
14        if ($argv eq "--sourcedir") {
15                $classpath = "../../build/i2p.jar:../../build/jbigi.jar";
16        }
17}
18
19$javacommand = "$runtime -cp $classpath -Dlogger.shutdownDelay=0";
20
21$failed = 0;
22$passed = 0;
23$failedtotal = 0;
24$passedtotal = 0;
25
26print "\nTest Suite #1: i2p/core/java/test/net/i2p/data/*Test\n\n";
27
28@testclasses = ( "AbuseReason", "AbuseSeverity", "Boolean", "Certificate",
29        "CreateLeaseSetMessage", "CreateSessionMessage", "Date", "Destination",
30        "DestroySessionMessage", "DisconnectMessage", "Hash", "LeaseSet", "Lease",
31        "Mapping", "MessageId", "MessagePayloadMessage", "MessageStatusMessage",
32        "Payload", "PrivateKey", "PublicKey", "ReceiveMessageBeginMessage",
33        "ReceiveMessageEndMessage", "ReportAbuseMessage", "RequestLeaseSetMessage",
34        "RouterAddress", "RouterIdentity", "RouterInfo", "SendMessageMessage",
35        "SessionConfig", "SessionId", "SessionKey", "SessionStatusMessage",
36        "Signature", "SigningPrivateKey", "SigningPublicKey", "String", "TunnelId",
37    "UnsignedInteger" );
38
39foreach $testclass (@testclasses) {
40        print "[TEST] $testclass: ";
41        if(! system("$javacommand net.i2p.data.TestData test $testclass $testclass.dat > /dev/null 2>test.tmp")) {
42                print "OK\n";
43                $passed++;
44        } else {
45                print "FAILED\n";
46                print "Error Messages:\n\n";
47                open TMP, "test.tmp";
48                while (<TMP>) {
49                        print "$_";
50                }
51                print "\n";
52                $failed++;
53        }
54        system("rm -f $testclass.dat test.tmp > /dev/null 2>&1");
55}
56
57print "\nTEST SUITE #1 RESULTS\nPassed: $passed\nFailed: $failed\n\n";
58
59$failedtotal += $failed;
60$passedtotal += $passed;
61$failed = 0;
62$passed = 0;
63
64print "\nTest Suite #2: i2p/core/java/test/net/i2p/crypto/*\n\n";
65
66@testclasses = ( "ElGamalAESEngine", "ElGamalVerify", "SessionEncryptionTest" );
67
68foreach $testclass (@testclasses) {
69        if ($testclass eq "SessionEncryptionTest") {
70                print "[TEST] $testclass: ";
71                if(! system("$javacommand net.i2p.crypto.SessionEncryptionTest > /dev/null 2>test.tmp")) {
72                        print "OK\n";
73                        $passed++;
74                } else {
75                        print "FAILED\n";
76                        print "Error Messages:\n\n";
77                        open TMP, "test.tmp";
78                        while (<TMP>) {
79                                print "$_";
80                        }
81                        $failed++;
82                }
83        } else {
84                print "[TEST] $testclass:\n\n";
85                if(! system("$javacommand net.i2p.crypto.$testclass")) {
86                        $passed++;
87                } else {
88                        $failed++;
89                }
90        }
91        print "\n";
92        system("rm -f test.tmp > /dev/null 2>&1");
93}
94
95print "\nTEST SUITE #2 RESULTS\nPassed: $passed\nFailed: $failed\n\n";
96
97$failedtotal += $failed;
98$passedtotal += $passed;
99$failed = 0;
100$passed = 0;
101
102print "\nTest Suite #3: Miscellaneous\n\n";
103
104@testclasses = ( "net.i2p.util.LogManager", "net.i2p.util.OrderedProperties",
105        "net.i2p.stat.RateStat", "net.i2p.data.UnsignedInteger" );
106
107foreach $testclass (@testclasses) {
108        if ($testclass eq "net.i2p.data.UnsignedInteger") {
109                print "[TEST] $testclass:\n\n";
110                if(! system("$javacommand net.i2p.data.UnsignedInteger")) {
111                        $passed++;
112                } else {
113                        $failed++;
114                }
115                print "\n";
116        } else {
117                print "[TEST] $testclass: ";
118                if(! system("$javacommand $testclass > /dev/null 2>test.tmp")) {
119                        print "OK\n";
120                        $passed++;
121                } else {
122                        print "FAILED\n";
123                        print "Error Messages:\n\n";
124                        open TMP, "test.tmp";
125                        while (<TMP>) {
126                                print "$_";
127                        }
128                        $failed++;
129                }
130        }
131        system("rm -f test.tmp > /dev/null 2>&1");
132}
133
134print "\nTEST SUITE #3 RESULTS\nPassed: $passed\nFailed: $failed\n\n";
135
136$failedtotal += $failed;
137$passedtotal += $passed;
138
139print "\n*** ALL TESTS COMPLETE ***\n\nTotal Passed: $passedtotal\nTotal Failed: $failedtotal\n\n";
Note: See TracBrowser for help on using the repository browser.