9 use Digest::MD5 qw(md5 md5_hex);
12 # This is the output of: 'md5sum MD5.pm MD5.xs'
16 if (ord('A') == 193) { # EBCDIC
18 dcc1f89cf6144d81e5f9d291d9849ef1 ext/Digest/MD5/MD5.pm
19 61debd0ec12e131e1ba220e2f3ad2d26 ext/Digest/MD5/MD5.xs
23 9e1d1183ff41717c91a563c41e08d672 ext/Digest/MD5/MD5.pm
24 61debd0ec12e131e1ba220e2f3ad2d26 ext/Digest/MD5/MD5.xs
32 for (split /^/, $EXPECT) {
33 my($md5hex, $file) = split ' ';
34 my @path = split(m:/:, $file);
36 my $path = File::Spec->updir;
38 $path = File::Spec->catdir($path, shift @path);
40 $file = File::Spec->catfile($path, $last);
41 my $md5bin = pack("H*", $md5hex);
44 if (digest_file($file, 'digest') ne $md5bin) {
45 print "$file: Bad digest\n";
49 if (digest_file($file, 'hexdigest') ne $md5hex) {
50 print "$file: Bad hexdigest\n";
54 my $data = cat_file($file);
55 if (md5($data) ne $md5bin) {
56 print "$file: md5() failed\n";
59 if (md5_hex($data) ne $md5hex) {
60 print "$file: md5_hex() failed\n";
64 if (Digest::MD5->new->add($data)->digest ne $md5bin) {
65 print "$file: MD5->new->add(...)->digest failed\n";
68 if (Digest::MD5->new->add($data)->hexdigest ne $md5hex) {
69 print "$file: MD5->new->add(...)->hexdigest failed\n";
73 my @data = split //, $data;
74 if (md5(@data) ne $md5bin) {
75 print "$file: md5(\@data) failed\n";
78 if (Digest::MD5->new->add(@data)->digest ne $md5bin) {
79 print "$file: MD5->new->add(\@data)->digest failed\n";
82 my $md5 = Digest::MD5->new;
86 if ($md5->digest ne $md5bin) {
87 print "$file: $md5->add()-loop failed\n";
91 print "not " if $failed;
92 print "ok ", ++$testno, "\n";
98 my($file, $method) = @_;
100 #print "$file $method\n";
102 open(FILE, $file) or die "Can't open $file: $!";
104 my $digest = Digest::MD5->new->addfile(*FILE)->$method();
114 open(FILE, $file) or die "Can't open $file: $!";