t/10-x.t
changeset 11 1fccf68e52c6
parent 7 388a9b037a36
child 16 0e1c0994309a
equal deleted inserted replaced
10:af315e1a9b1e 11:1fccf68e52c6
       
     1 use Test::More tests => 2;
       
     2 use strict;
       
     3 use warnings;
       
     4 use Fatal qw(:void open seek truncate);
       
     5 use FindBin qw($Bin);
       
     6 use File::Temp qw(tempfile);;
       
     7 use File::Compare;
       
     8 
       
     9 my $MIMECUT = "$Bin/../hs12";
       
    10 
       
    11 my $tmpout = tempfile();
       
    12 open(my $saveout, ">&STDOUT");
       
    13 open(STDOUT, ">&", $tmpout);
       
    14 
       
    15 foreach (qw(plain signed)) {
       
    16     seek($tmpout, 0, 0);
       
    17     truncate($tmpout, 0);
       
    18 
       
    19     system("$MIMECUT <$Bin/../messages/$_.in");
       
    20     seek($tmpout, 0, 0);
       
    21     is(compare($tmpout, "$Bin/../messages/$_.out"), 0, $_);
       
    22 }
       
    23 
       
    24 
       
    25 __END__
       
    26 use Fatal qw(:void open close seek);
       
    27 use FindBin qw($Bin);
       
    28 
       
    29 use IO::File;
       
    30 
       
    31 my $out = new_tmpfile IO::File;
       
    32 my $err = new_tmpfile IO::File;
       
    33 
       
    34 
       
    35 my $pid = open(CUTTER, "|-") or do {
       
    36 	open(STDERR, ">&", $err);
       
    37 	open(STDOUT, ">&", $out);
       
    38 	exec "../mimecut";
       
    39 	die "Can't exec: $!\n";
       
    40 };
       
    41 
       
    42 open(X, "$Bin/mail1.eml");
       
    43 
       
    44 print CUTTER <X>;
       
    45 close(CUTTER);
       
    46 
       
    47 seek($out, 0, 0);
       
    48 print <$out>;