Branch Coverage

blib/lib/MooseX/MungeHas.pm
Criterion Covered Total %
branch 37 72 51.3


line true false branch
19 7 0 if eval "require $backend; *eval_closure = \\&${backend}::eval_closure;"
22 0 7 unless exists &MooseX::MungeHas::eval_closure
33 0 9 unless my $orig = \&{"${caller}::has";}
37 1 8 @_ == 1 && ref $_[0] eq 'HASH' ? :
57 3 6 if ($INC{'Moo.pm'})
59 2 1 if $Moo::MAKERS{$package}
60 1 0 if $Moo::Role::INFO{$package}
63 6 0 if ($INC{'Moose.pm'})
66 6 0 if Moose::Util::find_meta($package)
69 0 0 if ($INC{'Mouse.pm'})
72 0 0 if Mouse::Util::find_meta($package)
76 0 0 unless eval { do { $meta = $package->meta } }
78 0 0 if ref $meta eq 'Moo::HandleMoose::FakeMetaClass'
79 0 0 if $meta->isa('Mouse::Meta::Module')
80 0 0 if $meta->isa('Moose::Meta::Class')
81 0 0 if $meta->isa('Moose::Meta::Role')
104 7 3 if (_detect_oo($caller) =~ /^Mo[ou]se$/)
113 7 43 if (delete $features{"is_$is"})
137 7 3 unless (_detect_oo($caller) eq 'Moo')
170 2 8 if (delete $features{'always_coerce'})
177 2 8 if (delete $features{'always_required'})
184 3 7 if (_detect_oo($caller) eq 'Moo')
196 0 10 if (delete $features{'no_isa'})
201 2 8 if (delete $features{'simple_isa'})
211 0 10 if keys %features
227 4 0 if ($t->has_parent)
233 0 0 if ($t->isa('Type::Tiny::Intersection'))
253 0 10 if _detect_oo($caller) eq 'Mouse'
259 4 15 @_ == 2 && &blessed($_[1]) && $_[1]->can('check') ? :
0 19 @_ == 2 && ref $_[1] eq 'HASH' ? :
5 19 @_ == 2 && ref $_[1] eq 'CODE' ? :
266 1 23 if (ref $attr eq 'ARRAY') { }
296 0 0 @_ == 2 && &blessed($_[1]) && $_[1]->can('check') ? :
0 0 @_ == 2 && ref $_[1] eq 'HASH' ? :
0 0 @_ == 2 && ref $_[1] eq 'CODE' ? :
303 0 0 if (ref $attr eq 'ARRAY') { }