Branch Coverage

blib/lib/POE/Component/IRC/Plugin/BotCommand.pm
Criterion Covered Total %
branch 80 134 59.7


line true false branch
12 0 8 if @_ & 1
15 8 0 unless defined $args{'Method'}
18 1 10 if (ref $args{'Commands'}{$cmd} eq "HASH")
20 0 1 unless exists $args{'Commands'}{$cmd}{'info'}
23 1 0 unless $args{'Commands'}{lc $cmd}{'handler'}
33 5 3 unless defined $self->{'Addressed'}
34 5 3 unless defined $self->{'Prefix'}
35 8 0 unless defined $self->{'In_channels'}
36 8 0 unless defined $self->{'In_private'}
54 0 2 unless $self->{'In_private'}
57 0 2 unless ($self->{'Bare_private'})
58 0 0 unless $what =~ s/^\Q$self->{'Prefix'}\E//
62 0 2 unless (($cmd, $args) = $what =~ /$self->{'rx_cmd_args'}/)
67 0 2 $self->{'Eat'} ? :
77 0 16 unless $self->{'In_channels'}
80 10 6 if ($self->{'Addressed'}) { }
81 0 10 unless ($what) = $what =~ /^\s*\Q$me\E[:,;.!?~]?\s*(.*)$/
84 0 6 unless $what =~ s/^\Q$self->{'Prefix'}\E//
88 0 16 unless (($cmd, $args) = $what =~ /$self->{'rx_cmd_args'}/)
93 2 14 $self->{'Eat'} ? :
106 0 18 unless $irc->isupport("CHANTYPES")
107 16 2 $where =~ /^[$chantypes]/ ? :
112 0 18 if (my $cmd_resolved = $self->resolve_alias($cmd))
118 11 7 if (defined $self->{'Commands'}{$cmd})
119 1 10 if (ref $self->{'Commands'}{$cmd} eq "HASH")
120 1 0 defined $args ? :
121 0 1 if (defined $self->{'Commands'}{$cmd}{'args'} and ref $self->{'Commands'}{$cmd}{'args'} eq "ARRAY" and @{$self->{'Commands'}{$cmd}{'args'};} and @args_array < @{$self->{'Commands'}{$cmd}{'args'};} || !defined($self->{'Commands'}{$cmd}{'variable'}) && @args_array > @{$self->{'Commands'}{$cmd}{'args'};})
133 1 0 if (defined $self->{'Commands'}{$cmd}{'variable'} or defined $self->{'Commands'}{$cmd}{'args'} and ref $self->{'Commands'}{$cmd}{'args'} eq "ARRAY" and @{$self->{'Commands'}{$cmd}{'args'};})
139 1 0 if (defined $self->{'Commands'}{$cmd}{'args'} and ref $self->{'Commands'}{$cmd}{'args'} eq "ARRAY" and @{$self->{'Commands'}{$cmd}{'args'};})
145 1 1 if (ref $self->{'Commands'}{$cmd}{$_} eq "ARRAY")
151 0 1 if (&none(sub { $_ eq $in_arg; } , @values))
164 1 0 if (defined $self->{'Commands'}{$cmd}{'variable'})
173 3 15 if (ref $self->{'Auth_sub'} eq "CODE")
176 1 2 unless ($authed)
177 0 1 ref $errors eq 'ARRAY' ? :
180 1 0 unless ($self->{'Ignore_unauthorized'})
189 11 6 if (defined $self->{'Commands'}{$cmd}) { }
6 0 elsif ($cmd =~ /^help$/i) { }
0 0 elsif (not $self->{'Ignore_unknown'}) { }
190 1 10 ref $self->{'Commands'}{$cmd} eq 'HASH' ? :
210 6 0 $self->{'Addressed'} && $public ? :
213 3 3 if (defined $args) { }
220 1 2 if (exists $self->{'Commands'}{$cmd_resolved}) { }
221 1 0 if (ref $self->{'Commands'}{$cmd_resolved} eq 'HASH') { }
228 1 0 defined $self->{'Commands'}{$cmd_resolved}{'args'} && ref $self->{'Commands'}{$cmd_resolved}{'args'} eq 'ARRAY' ? :
1 0 defined $self->{'Commands'}{$cmd_resolved}{'variable'} ? :
231 1 0 if (defined $self->{'Commands'}{$cmd_resolved}{'args'} and ref $self->{'Commands'}{$cmd_resolved}{'args'} eq "ARRAY" and @{$self->{'Commands'}{$cmd_resolved}{'args'};})
238 0 2 unless defined $self->{'Commands'}{$cmd_resolved}{$arg}
239 1 1 if (ref $self->{'Commands'}{$cmd_resolved}{$arg} eq 'ARRAY') { }
256 0 0 ref $self->{'Commands'}{$cmd_resolved}{'args'} eq 'ARRAY' ? :
0 0 defined $self->{'Commands'}{$cmd_resolved}{'variable'} ? :
0 1 if $cmd_resolved ne $cmd
261 0 1 if ($cmd_resolved ne $cmd)
266 0 1 if scalar @aliases
278 1 2 if (keys %{$$self{'Commands'};}) { }
287 0 6 if (ref $self->{'Help_sub'} eq 'CODE') { }
289 0 0 defined $args ? :
304 0 8 if exists $self->{'Commands'}{$cmd}
306 1 7 if (ref $usage eq "HASH")
307 0 1 unless exists $usage->{'info'} and @{$usage->{'args'};}
317 0 5 unless exists $self->{'Commands'}{$cmd}
335 26 6 unless ref $info eq "HASH"
336 6 0 unless $info->{'aliases'} and ref $info->{'aliases'} eq "ARRAY"
341 0 0 if $alias eq $cmdalias
352 0 1 unless exists $self->{'Commands'}{$cmd}
353 0 1 unless ref $self->{'Commands'}{$cmd} eq "HASH"
354 1 0 unless exists $self->{'Commands'}{$cmd}{'aliases'} and ref $self->{'Commands'}{$cmd}{'aliases'} eq "ARRAY"