File Coverage

blib/lib/Net/WebSocket/X/BadArg.pm
Criterion Covered Total %
statement 13 16 81.2
branch 1 4 25.0
condition n/a
subroutine 4 4 100.0
pod n/a
total 18 24 75.0


line stmt bran cond sub pod time code
1             package Net::WebSocket::X::BadArg;
2              
3 2     2   1000 use strict;
  2         4  
  2         44  
4 2     2   8 use warnings;
  2         3  
  2         44  
5              
6 2     2   7 use parent qw( Net::WebSocket::X::Base );
  2         3  
  2         8  
7              
8             sub _new {
9 8     8   433 my ($class, $name, $val, $why) = @_;
10              
11 8         20 my $caller = (caller 1)[3];
12              
13 8 50       246 if ($why) {
14 8         34 return $class->SUPER::_new(
15             "$caller: invalid “$name” ($val) - $why",
16             name => $name,
17             value => $val,
18             why => $why,
19             );
20             }
21              
22 0           my $disp_val = $val;
23 0 0         $disp_val = q<> if !defined $val;
24              
25 0           return $class->SUPER::_new(
26             sprintf("%s: invalid “%s” (%s)", $caller, $name, $disp_val),
27             name => $name,
28             value => $val,
29             );
30             }
31              
32             1;