Branch Coverage

blib/lib/Anansi/ComponentManager.pm
Criterion Covered Total %
branch 0 338 0.0


line true false branch
281 0 0 unless ref($self) =~ /^$/
282 0 0 if 0 == scalar keys %parameters
284 0 0 if (not ref($key) =~ /^$/) { }
0 0 elsif (ref($parameters{$key}) =~ /^CODE$/i) { }
0 0 elsif (not ref($parameters{$key}) =~ /^$/) { }
0 0 elsif ($parameters{$key} =~ /^[a-zA-Z]+[a-zA-Z0-9_]*(::[a-zA-Z]+[a-zA-Z0-9_]*)*$/) { }
290 0 0 if (exists &{$parameters{$key};}) { }
0 0 elsif (exists &{$package . '::' . $parameters{$key};}) { }
299 0 0 unless defined $CHANNELS{$package}
301 0 0 if (ref($parameters{$key}) =~ /^CODE$/i) { }
0 0 elsif ($parameters{$key} =~ /^[a-zA-Z]+[a-zA-Z0-9_]*(::[a-zA-Z]+[a-zA-Z0-9_]*)*$/) { }
307 0 0 if (exists &{$parameters{$key};}) { }
388 0 0 unless ref($self) =~ /^$/
389 0 0 if (not defined $identification) { }
0 0 elsif (not ref($identification) =~ /^$/) { }
0 0 elsif ($identification =~ /^\s*$/) { }
0 0 elsif (defined $COMPONENTS{$package}) { }
396 0 0 if defined ${$COMPONENTS{$package};}{$identification}
398 0 0 if defined $reverse{$identification}
399 0 0 if defined $IDENTIFICATIONS{$identification}
401 0 0 if defined $reverse{$identification}
404 0 0 unless ($identification =~ /^\d{20}$/)
409 0 0 unless ref($components) =~ /^ARRAY$/i
413 0 0 unless defined $priority
419 0 0 unless defined $components
420 0 0 unless ref($components) =~ /^ARRAY$/i
423 0 0 unless defined $valid
424 0 0 if ($valid)
429 0 0 if defined $OBJECT
432 0 0 unless defined $OBJECT
433 0 0 unless defined $COMPONENTS{$package}
481 0 0 if 'Anansi::ComponentManager' eq $self
483 0 0 unless ref($self) =~ /^$/
484 0 0 if (0 == scalar @_)
485 0 0 unless defined $CHANNELS{$package}
489 0 0 unless ref($channel) =~ /^$/
490 0 0 unless defined $CHANNELS{$package}
491 0 0 unless defined ${$CHANNELS{$package};}{$channel}
561 0 0 unless ref($self) =~ /^$/
562 0 0 unless defined $COMPONENTS{$package}
564 0 0 if (0 == scalar @_)
567 0 0 if (defined $IDENTIFICATIONS{$identification}) { }
0 0 elsif (defined $reverse{$identification}) { }
576 0 0 unless defined $identification
578 0 0 if (defined ${$COMPONENTS{$package};}{$identification}) { }
0 0 elsif (defined ${$COMPONENTS{$package};}{$reverse{$identification}}) { }
585 0 0 if 0 == scalar @_
624 0 0 if (not defined $identification) { }
0 0 elsif (not ref($identification) =~ /^$/) { }
0 0 elsif ($identification =~ /^\s*$/) { }
0 0 elsif (defined $IDENTIFICATIONS{$identification}) { }
0 0 elsif (defined $reverse{$identification}) { }
682 0 0 unless ref($package) =~ /^$/
685 0 0 if ('Anansi::ComponentManager' eq $package)
687 0 0 if 'Anansi::Component' eq $module
689 0 0 unless eval { do { $module->isa('Anansi::Component') } }
697 0 0 unless $module =~ /^${namespace}[^:]+$/
699 0 0 unless eval { do { $module->isa('Anansi::Component') } }
740 0 0 if (defined $parameters{'IDENTIFICATION'})
742 0 0 if (not defined $self->componentIdentification($identification))
804 0 0 unless ref($package) =~ /^$/
805 0 0 if 'Anansi::ComponentManager' eq $package
811 0 0 unless defined $parameters{'COMPONENT'}
812 0 0 unless ref($parameters{'COMPONENT'}) =~ /^$/
813 0 0 if $parameters{'COMPONENT'} =~ /^\s*$/
814 0 0 unless (defined $components{$parameters{'COMPONENT'}})
822 0 0 unless defined $prioritise
823 0 0 unless ref($prioritise) =~ /^HASH$/i
825 0 0 unless defined $componentName
826 0 0 unless defined $componentPriority
827 0 0 unless ref($componentPriority) =~ /^$/
828 0 0 if ($componentPriority =~ /^\s*LOWER\s*/i) { }
0 0 elsif ($componentPriority =~ /^\s*HIGHER\s*/i) { }
0 0 elsif ($componentPriority =~ /^\s*SAME\s*/i) { }
835 0 0 unless $componentPriority =~ /^\s*(|\-|\+)\d+\s*$/
836 0 0 if ($componentPriority < 0) { }
0 0 elsif (0 < $componentPriority) { }
856 0 0 unless defined $parameters{'HIGHER'}
857 0 0 unless ref($parameters{'HIGHER'}) =~ /^$/
858 0 0 if $parameters{'HIGHER'} =~ /^\s*$/
859 0 0 unless defined $parameters{'COMPONENT'}
860 0 0 unless ref($parameters{'COMPONENT'}) =~ /^$/
861 0 0 if $parameters{'COMPONENT'} =~ /^\s*$/
862 0 0 unless (defined $components{$parameters{'COMPONENT'}})
869 0 0 unless (defined $components{$parameters{'HIGHER'}})
878 0 0 if defined ${${$components{$lower};}{'HIGHER'};}{$parameters{'HIGHER'}}
879 0 0 if (defined ${${$components{$lower};}{'SAME'};}{$parameters{'HIGHER'}})
889 0 0 if (not defined $wasHigher) { }
0 0 elsif (0 == $wasHigher) { }
903 0 0 unless defined $parameters{'COMPONENT'}
904 0 0 unless ref($parameters{'COMPONENT'}) =~ /^$/
905 0 0 if $parameters{'COMPONENT'} =~ /^\s*$/
906 0 0 unless defined $parameters{'LOWER'}
907 0 0 unless ref($parameters{'LOWER'}) =~ /^$/
908 0 0 if $parameters{'LOWER'} =~ /^\s*$/
909 0 0 unless (defined $components{$parameters{'COMPONENT'}})
916 0 0 unless (defined $components{$parameters{'LOWER'}})
925 0 0 if defined ${${$components{$higher};}{'LOWER'};}{$parameters{'LOWER'}}
926 0 0 if (defined ${${$components{$higher};}{'SAME'};}{$parameters{'LOWER'}})
936 0 0 if (not defined $wasLower) { }
0 0 elsif (0 == $wasLower) { }
950 0 0 if (defined $parameters{'SAME'}) { }
0 0 elsif (not defined $parameters{'HIGHER'}) { }
0 0 elsif (not ref($parameters{'HIGHER'}) =~ /^$/) { }
0 0 elsif ($parameters{'HIGHER'} =~ /^\s*$/) { }
0 0 elsif (not defined $parameters{'LOWER'}) { }
0 0 elsif (not ref($parameters{'LOWER'}) =~ /^$/) { }
0 0 elsif ($parameters{'LOWER'} =~ /^\s*$/) { }
0 0 elsif ($parameters{'HIGHER'} eq $parameters{'LOWER'}) { }
951 0 0 unless ref($parameters{'SAME'}) =~ /^ARRAY$/i
953 0 0 unless ref($component) =~ /^$/
954 0 0 if $component =~ /^\s*$/
957 0 0 if ${$parameters{'SAME'};}[0] eq ${$parameters{'SAME'};}[$index]
978 0 0 unless (defined $components{$parameters{'HIGHER'}})
985 0 0 unless (defined $components{$parameters{'LOWER'}})
992 0 0 if (${${$components{$parameters{'HIGHER'}};}{'LOWER'};}{$parameters{'LOWER'}}) { }
0 0 elsif (${${$components{$parameters{'HIGHER'}};}{'HIGHER'};}{$parameters{'LOWER'}}) { }
1016 0 0 unless defined $parameters{'COMPONENT'}
1017 0 0 unless ref($parameters{'COMPONENT'}) =~ /^$/
1018 0 0 if $parameters{'COMPONENT'} =~ /^\s*$/
1019 0 0 unless defined $parameters{'SAME'}
1020 0 0 unless ref($parameters{'SAME'}) =~ /^$/
1021 0 0 if $parameters{'SAME'} =~ /^\s*$/
1022 0 0 if $parameters{'COMPONENT'} eq $parameters{'SAME'}
1023 0 0 unless (defined $components{$parameters{'COMPONENT'}})
1030 0 0 unless (defined $components{$parameters{'SAME'}})
1037 0 0 if (defined ${${$components{$parameters{'COMPONENT'}};}{'LOWER'};}{$parameters{'SAME'}})
1041 0 0 if (defined ${${$components{$parameters{'COMPONENT'}};}{'HIGHER'};}{$parameters{'SAME'}})
1045 0 0 if (not defined ${${$components{$parameters{'COMPONENT'}};}{'SAME'};}{$parameters{'SAME'}})
1049 0 0 if $component eq $parameters{'SAME'}
1050 0 0 if defined ${${$components{$component};}{'SAME'};}{$parameters{'SAME'}}
1051 0 0 if (defined ${${$components{$component};}{'LOWER'};}{$parameters{'SAME'}}) { }
0 0 elsif (defined ${${$components{$component};}{'HIGHER'};}{$parameters{'SAME'}}) { }
1061 0 0 if defined ${$components{$parameters{'SAME'}};}{$lower}
1068 0 0 if defined ${$components{$parameters{'SAME'}};}{$higher}
1076 0 0 if $component eq $parameters{'COMPONENT'}
1077 0 0 if defined ${${$components{$component};}{'SAME'};}{$parameters{'COMPONENT'}}
1078 0 0 if (defined ${${$components{$component};}{'LOWER'};}{$parameters{'COMPONENT'}}) { }
0 0 elsif (defined ${${$components{$component};}{'HIGHER'};}{$parameters{'COMPONENT'}}) { }
1088 0 0 if defined ${$components{$parameters{'COMPONENT'}};}{$lower}
1095 0 0 if defined ${$components{$parameters{'COMPONENT'}};}{$higher}
1106 0 0 unless ref($COMPONENTS) =~ /^ARRAY$/i
1107 0 0 unless defined $PRIORITIES{$package}
1108 0 0 unless ref($PRIORITIES{$package}) =~ /^HASH$/i
1109 0 0 if (0 == scalar keys %{$PRIORITIES{$package};})
1121 0 0 if defined ${$PRIORITIES{$package};}{$component}
1124 0 0 if (not defined ${$PRIORITIES{$package};}{$lower}) { }
0 0 elsif ($priorities == ${$PRIORITIES{$package};}{$lower}) { }
1132 0 0 if (0 == $hasLower)
1143 0 0 if (not defined $parameters{'PRIORITY'}) { }
0 0 elsif (not ref($parameters{'PRIORITY'}) =~ /^$/) { }
0 0 elsif ($parameters{'PRIORITY'} =~ /^\s*\d+\s*$/) { }
0 0 elsif (defined ${$PRIORITIES{$package};}{$parameters{'PRIORITY'}}) { }
1146 0 0 if $priorities < ${$PRIORITIES{$package};}{$priority}
1153 0 0 if $parameters{'PRIORITY'} == ${$PRIORITIES{$package};}{$priority}
1155 0 0 if 0 == scalar @priorities
1198 0 0 if (defined $parameters{'IDENTIFICATION'})
1200 0 0 if (not defined $self->componentIdentification($identification))
1248 0 0 unless ref($self) =~ /^$/
1249 0 0 if 0 == scalar @parameters
1250 0 0 unless defined $CHANNELS{$package}
1252 0 0 unless defined ${$CHANNELS{$package};}{$key}
1299 0 0 unless ref($self) =~ /^$/
1300 0 0 if 0 == scalar @parameters
1301 0 0 unless defined $COMPONENTS{$package}
1304 0 0 if (defined ${$COMPONENTS{$package};}{$key}) { }
0 0 elsif (not defined ${$COMPONENTS{$package};}{$reverse{$key}}) { }
1310 0 0 if (defined ${$COMPONENTS{$package};}{$key}) { }
0 0 elsif (defined ${$COMPONENTS{$package};}{$reverse{$key}}) { }