File Coverage

blib/lib/Memory/Process.pm
Criterion Covered Total %
statement 35 35 100.0
branch 8 8 100.0
condition n/a
subroutine 9 9 100.0
pod 5 5 100.0
total 57 57 100.0


line stmt bran cond sub pod time code
1             package Memory::Process;
2              
3 8     8   107905 use base qw(Memory::Usage);
  8         55  
  8         3764  
4 8     8   5482 use strict;
  8         27  
  8         159  
5 8     8   34 use warnings;
  8         15  
  8         171  
6              
7 8     8   4442 use Readonly;
  8         32663  
  8         2689  
8              
9             # Constants.
10             Readonly::Scalar our $EMPTY_STR => q{};
11              
12             our $VERSION = 0.06;
13              
14             # Record.
15             sub record {
16 7     7 1 1004909 my ($self, $message, $pid) = @_;
17 7 100       37 if (! defined $message) {
18 2         5 $message = $EMPTY_STR;
19             }
20 7         51 return $self->SUPER::record($message, $pid);
21             }
22              
23             # Print report to STDERR.
24             sub dump {
25 2     2 1 5053 my $self = shift;
26 2         14 return print STDERR scalar $self->report;
27             }
28              
29             # Get report.
30             sub report {
31 4     4 1 958 my $self = shift;
32 4         29 my $report = $self->SUPER::report;
33 4         145 my @report_full = split m/\n/ms, $report;
34 4         60 my @report = ();
35 4 100       31 if (@report_full > 2) {
36 1         9 @report = ($report_full[0], $report_full[-2], $report_full[-1]);
37             };
38 4         17 my $report_scalar = (join "\n", @report);
39 4 100       16 if ($report_scalar ne $EMPTY_STR) {
40 1         6 $report_scalar .= "\n";
41             }
42 4 100       122 return wantarray ? @report : $report_scalar;
43             }
44              
45             # Reset records.
46             sub reset {
47 1     1 1 874 my $self = shift;
48 1         2 @{$self} = ();
  1         3  
49 1         2 return;
50             }
51              
52             # Get state.
53             sub state {
54 2     2 1 234 my $self = shift;
55 2         5 return [@{$self}];
  2         9  
56             }
57              
58             1;
59              
60             __END__