File Coverage: blib/lib/Test/Mocha/MethodCall.pm

# File Coverage

File: | blib/lib/Test/Mocha/MethodCall.pm
Coverage: | 100.0%

line | stmt | bran | cond | sub | pod | time | code
--- | --- | --- | --- | --- | --- | --- | ---
1 |  |  |  |  |  |  | package Test::Mocha::MethodCall;
2 |  |  |  |  |  |  | # ABSTRACT: Objects to represent method calls
3 |  |  |  |  |  |  | $Test::Mocha::MethodCall::VERSION = '0.61';
4 | 24 24 24 |  |  | 24 |  | 73 31 77 | use parent 'Test::Mocha::Method';
5 | 24 24 24 |  |  | 24 |  | 597 22 366 | use strict;
6 | 24 24 24 |  |  | 24 |  | 47 24 1701 | use warnings;
7 |
8 |  |  |  |  |  |  | sub new {
9 |  |  |  |  |  |  | # uncoverable pod
10 | 546 |  |  | 546 | 0 | 875 | my ( $class, %args ) = @_;
11 |  |  |  |  |  |  | # caller should be an arrayref tuple [file, line]
12 |  |  |  |  |  |  | ### assert: defined $args{invocant}
13 |  |  |  |  |  |  | ### assert: defined $args{caller}
14 |  |  |  |  |  |  | ### assert: ref $args{caller} eq 'ARRAY' && @{$args{caller}} == 2
15 | 546 |  |  |  |  | 1262 | return $class->SUPER::new(%args);
16 |  |  |  |  |  |  | }
17 |
18 |  |  |  |  |  |  | sub invocant {
19 |  |  |  |  |  |  | # uncoverable pod
20 | 258 |  |  | 258 | 0 | 618 | return $_[0]->{invocant};
21 |  |  |  |  |  |  | }
22 |
23 |  |  |  |  |  |  | sub caller { ## no critic (ProhibitBuiltinHomonyms)
24 |  |  |  |  |  |  | # uncoverable pod
25 | 90 90 |  |  | 90 | 0 | 44 314 | return @{ $_[0]->{caller} }; # ($file, $line)
26 |  |  |  |  |  |  | }
27 |
28 |  |  |  |  |  |  | sub stringify_long {
29 |  |  |  |  |  |  | # uncoverable pod
30 | 88 |  |  | 88 | 0 | 1221 | my ($self) = @_;
31 | 88 |  |  |  |  | 137 | return sprintf '%s called at %s line %d',
32 |  |  |  |  |  |  | $self->SUPER::stringify, $self->caller;
33 |  |  |  |  |  |  | }
34 |
35 |  |  |  |  |  |  | 1;