File Coverage

blib/lib/Mail/Message/Convert/MimeEntity.pm
Criterion Covered Total %
statement 30 30 100.0
branch 4 8 50.0
condition 1 3 33.3
subroutine 9 9 100.0
pod 2 2 100.0
total 46 52 88.4


line stmt bran cond sub pod time code
1             # This code is part of Perl distribution Mail-Message version 4.04.
2             # The POD got stripped from this file by OODoc version 3.06.
3             # For contributors see file ChangeLog.
4              
5             # This software is copyright (c) 2001-2026 by Mark Overmeer.
6              
7             # This is free software; you can redistribute it and/or modify it under
8             # the same terms as the Perl 5 programming language system itself.
9             # SPDX-License-Identifier: Artistic-1.0-Perl OR GPL-1.0-or-later
10              
11              
12             package Mail::Message::Convert::MimeEntity;{
13             our $VERSION = '4.04';
14             }
15              
16 1     1   101953 use parent 'Mail::Message::Convert';
  1         3  
  1         12  
17              
18 1     1   68 use strict;
  1         2  
  1         28  
19 1     1   5 use warnings;
  1         3  
  1         62  
20              
21 1     1   7 use Log::Report 'mail-message', import => [ qw/__x error/ ];
  1         3  
  1         6  
22              
23 1     1   211 use MIME::Entity ();
  1         3  
  1         37  
24 1     1   1080 use MIME::Parser ();
  1         18106  
  1         38  
25              
26 1     1   10 use Mail::Message ();
  1         2  
  1         235  
27              
28             #--------------------
29              
30             sub export($$;$)
31 2     2 1 1050 { my ($self, $message, $parser) = @_;
32 2 50       9 defined $message or return ();
33              
34 2 50       15 $message->isa('Mail::Message')
35             or error __x"export message must be a Mail::Message object, but is {what UNKNOWN}.", what => $message;
36              
37 2   33     28 $parser ||= MIME::Parser->new;
38 2         373 $parser->parse($message->file);
39             }
40              
41              
42             sub from($)
43 2     2 1 12231 { my ($self, $mime_ent) = @_;
44 2 50       9 defined $mime_ent or return ();
45              
46 2 50       15 $mime_ent->isa('MIME::Entity')
47             or error __x"converting from MIME::Entity but got a {class}.", class => ref $mime_ent;
48              
49 2         9 Mail::Message->read($mime_ent->as_string);
50             }
51              
52             1;