File Coverage

blib/lib/Data/Compare/Plugins/JSON.pm
Criterion Covered Total %
statement 12 14 85.7
branch 3 4 75.0
condition n/a
subroutine 5 5 100.0
pod n/a
total 20 23 86.9


line stmt bran cond sub pod time code
1             package Data::Compare::Plugins::JSON;
2              
3 3     3   140751 use strict;
  3         6  
  3         142  
4 3     3   15 use warnings;
  3         6  
  3         110  
5              
6 3     3   1887 use Data::Compare qw(Compare);
  3         32572  
  3         27  
7              
8              
9             our $VERSION = '1.03';
10              
11              
12             sub _compare_object_and_object {
13 4 100   4   2704 return $_[0] eq $_[1] ? 1 : 0;
14             }
15              
16             sub _compare_object_and_scalar {
17 4 50   4   2192 return Compare(${$_[0]}, $_[1]) if ref($_[0]);
  4         27  
18 0           return Compare($_[0], ${$_[1]});
  0            
19             }
20              
21              
22             [
23             ['JSON::PP::Boolean', \&_compare_object_and_object],
24             ['JSON::PP::Boolean', '', \&_compare_object_and_scalar],
25             ['JSON::XS::Boolean', \&_compare_object_and_object],
26             ['JSON::XS::Boolean', '', \&_compare_object_and_scalar],
27             ['JSON::backportPP::Boolean', \&_compare_object_and_object],
28             ['JSON::backportPP::Boolean', '', \&_compare_object_and_scalar],
29             ];
30              
31              
32             __END__