Branch Coverage

blib/lib/Net/Jabber/Protocol.pm
Criterion Covered Total %
branch 47 370 12.7


line true false branch
906 0 5 unless exists $args{'xmlns'}
908 0 5 unless exists $args{'type'}
910 0 5 unless exists $args{'functions'}
916 0 5 if (exists $args{'tag'}) { }
922 5 0 if $args{'type'} eq 'X'
923 0 5 if $args{'type'} eq 'Query'
935 0 29 unless exists $funcHash{'name'}
940 1 28 if (not exists $funcHash{'set'} and exists $funcHash{'get'})
945 0 12 if (exists $funcHash{'type'} or exists $funcHash{'path'} or exists $funcHash{'child'} or exists $funcHash{'calls'})
951 2 21 if ($type eq 'child') { }
957 0 0 if ($funcHash{$type}[$i] eq '__netjabber__:skip_xmlns')
962 0 0 if ($funcHash{$type}[$i] eq '__netjabber__:specifyname')
982 11 1 if (exists $funcHash{'hash'})
984 2 9 if $funcHash{'hash'} eq 'data'
985 2 9 if $funcHash{'hash'} eq 'child-data'
986 2 9 if $funcHash{'hash'} eq 'att'
987 2 9 if $funcHash{'hash'} =~ /^att-(\S+)-(.+)$/
990 1 11 if ($type eq 'master')
996 8 3 if ($type eq 'scalar')
1002 2 1 if ($type eq 'flag')
1009 1 0 if ($funcHash{'hash'} eq 'child-add' and exists $funcHash{'add'})
1042 0 0 unless defined $iq
1079 0 0 exists $args{'timeout'} ? :
1090 0 0 if ($args{'mode'} eq 'passthru')
1098 0 0 if $args{'mode'} eq 'nonblock'
1105 0 0 unless defined $iq
1106 0 0 if ($iq->GetType eq 'error')
1114 0 0 if (defined $query) { }
1138 0 0 if ($item->DefinedCategory) { }
1172 0 0 if ref $jid eq 'Net::Jabber::JID'
1174 0 0 unless exists $$self{'BROWSEDB'}{$indexJID}
1192 0 0 unless exists $args{'timeout'}
1195 0 0 if ref $args{'jid'} eq 'Net::Jabber::JID'
1197 0 0 if (exists $args{'refresh'} and $args{'refresh'} eq '1' or not exists $$self{'BROWSEDB'}{$indexJID})
1221 0 0 exists $args{'timeout'} ? :
1232 0 0 if ($args{'mode'} eq 'passthru')
1240 0 0 if $args{'mode'} eq 'nonblock'
1247 0 0 unless defined $iq
1248 0 0 if ($iq->GetType eq 'error')
1256 0 0 if (defined $query) { }
1285 0 0 if $host->DefinedHost
1286 0 0 if $host->DefinedPort
1287 0 0 if $host->DefinedZeroConf
1308 0 0 exists $args{'timeout'} ? :
1314 0 0 ref $args{'recipient'} eq 'Net::Jabber::JID' ? :
1322 0 0 if ($args{'mode'} eq 'passthru')
1330 0 0 if $args{'mode'} eq 'nonblock'
1337 0 0 unless defined $iq
1338 0 0 if ($iq->GetType eq 'error')
1361 0 0 exists $args{'timeout'} ? :
1372 0 0 exists $$host{'host'} ? :
0 0 exists $$host{'port'} ? :
0 0 exists $$host{'zeroconf'} ? :
1383 0 0 if ($args{'mode'} eq 'passthru')
1391 0 0 if $args{'mode'} eq 'nonblock'
1398 0 0 unless defined $iq
1399 0 0 if ($iq->GetType eq 'error')
1407 0 0 if (defined $query) { }
1430 0 0 exists $args{'timeout'} ? :
1436 0 0 if exists $args{'node'}
1442 0 0 if ($args{'mode'} eq 'passthru')
1450 0 0 if $args{'mode'} eq 'nonblock'
1457 0 0 unless defined $iq
1458 0 0 if ($iq->GetType eq 'error')
1463 0 0 unless $iq->DefinedQuery
1514 0 0 exists $args{'timeout'} ? :
1520 0 0 if exists $args{'node'}
1526 0 0 if ($args{'mode'} eq 'passthru')
1534 0 0 if $args{'mode'} eq 'nonblock'
1541 0 0 unless defined $iq
1542 0 0 if ($iq->GetType eq 'error')
1550 0 0 if (defined $query) { }
1596 0 0 exists $args{'timeout'} ? :
1610 0 0 if ($args{'mode'} eq 'passthru')
1618 0 0 if $args{'mode'} eq 'nonblock'
1625 0 0 unless defined $iq
1626 0 0 if ($iq->GetType eq 'error')
1634 0 0 if (defined $query) { }
1659 0 0 if exists $Net::Jabber::Query::TAGS{'http://jabber.org/protocol/feature-neg'}
1704 0 0 if ($#options == -1) { }
1732 0 0 exists $args{'timeout'} ? :
1749 0 0 if exists $args{'desc'}
1751 0 0 -B $args{'filename'} ? :
1759 0 0 unless (exists $args{'skip_methods'})
1761 0 0 if ($#{$args{'methods'};} == -1)
1776 0 0 if ($args{'mode'} eq 'passthru')
1784 0 0 if $args{'mode'} eq 'nonblock'
1791 0 0 unless defined $iq
1792 0 0 if ($iq->GetType eq 'error')
1800 0 0 if (defined $query) { }
1827 0 0 exists $args{'timeout'} ? :
1855 0 0 if ($#{$args{'methods'};} == -1)
1869 0 0 if ($args{'mode'} eq 'passthru')
1878 0 0 if $args{'mode'} eq 'nonblock'
1885 0 0 unless defined $iq
1886 0 0 if ($iq->GetType eq 'error')
1894 0 0 if (defined $query) { }
1927 0 0 if $file =~ /^\.\.?$/
1929 0 0 if (-d "$path/$file") { }
1969 0 0 unless exists $args{'waitforid'}
1971 0 0 if $waitforid
1973 0 0 exists $args{'timeout'} ? :
1976 0 0 if exists $args{'to'}
1980 0 0 if ($args{'mode'} eq 'passthru')
1988 0 0 if $args{'mode'} eq 'nonblock'
1992 0 0 unless defined $iq
1996 0 0 unless defined $last
2013 0 0 unless exists $args{'ignoreactivity'}
2057 0 0 if defined $to and $to ne ''
2063 0 0 if $args{$var} eq ''
2079 0 0 unless defined $iq
2080 0 0 if $iq->GetType eq 'error'
2099 0 0 if (defined $func) { }
2123 0 0 exists $args{'timeout'} ? :
2131 0 0 if ($args{'mode'} eq 'passthru')
2139 0 0 if $args{'mode'} eq 'nonblock'
2143 0 0 unless defined $iq
2167 0 0 unless defined $iq
2190 1 3 if ($args{'type'} eq 'methodCall')
2196 3 1 if ($args{'type'} eq 'methodResponse')
2201 1 3 if (exists $args{'faultcode'} or exists $args{'faultstring'}) { }
3 0 elsif (exists $args{'params'}) { }
2231 1 19 if (ref $value eq 'ARRAY') { }
2 17 elsif (ref $value eq 'HASH') { }
2249 6 11 if ($value =~ /^(int|i4|boolean|string|double|datetime|base64):/i) { }
5 6 elsif ($value =~ /^[+-]?\d+$/) { }
0 6 elsif ($value =~ /^(-?(?:\d+(?:\.\d*)?|\.\d+)|([+-]?)(?=\d|\.\d)\d*(\.\d*)?([Ee]([+-]?\d+))?)$/) { }
2284 0 0 if $query->DefinedMethodCall
2285 0 0 if $query->DefinedMethodResponse
2287 0 0 if (defined $source) { }
2289 0 0 if ($source->GetTag eq 'methodResponse' and $source->DefinedFault)
2296 0 0 if ($source->DefinedParams)
2326 0 0 if ($value->DefinedStruct)
2332 0 0 if ($value->DefinedArray)
2338 0 0 if $value->DefinedI4
2339 0 0 if $value->DefinedInt
2340 0 0 if $value->DefinedBoolean
2341 0 0 if $value->DefinedString
2342 0 0 if $value->DefinedDouble
2343 0 0 if $value->DefinedDateTime
2344 0 0 if $value->DefinedBase64
2406 0 0 exists $args{'timeout'} ? :
2412 0 0 if exists $args{'to'}
2422 0 0 if ($args{'mode'} eq 'passthru')
2430 0 0 if $args{'mode'} eq 'nonblock'
2434 0 0 if defined $iq
2440 0 0 unless defined $iq
2441 0 0 if ($iq->GetType eq 'error')
2489 0 0 if exists $args{'to'}
2519 0 0 if defined $to and $to ne ''
2525 0 0 if $args{$var} eq ''
2551 0 0 unless exists $args{'waitforid'}
2553 0 0 if $waitforid
2555 0 0 exists $args{'timeout'} ? :
2558 0 0 if exists $args{'to'}
2562 0 0 if ($args{'mode'} eq 'passthru')
2570 0 0 if $args{'mode'} eq 'nonblock'
2574 0 0 unless defined $iq
2578 0 0 unless defined $query
2623 0 0 unless exists $args{'waitforid'}
2625 0 0 if $waitforid
2627 0 0 exists $args{'timeout'} ? :
2630 0 0 if exists $args{'to'}
2634 0 0 if ($args{'mode'} eq 'passthru')
2642 0 0 if $args{'mode'} eq 'nonblock'
2646 0 0 unless defined $iq
2650 0 0 unless defined $query
2696 0 1 if (exists $args{'password'} and $args{'password'} ne '')
2701 1 0 if exists $args{'__netjabber__:test'}
2731 0 0 if $field->DefinedType
2733 0 0 if $field->DefinedLabel
2735 0 0 if $field->DefinedDesc
2737 0 0 if $field->DefinedVar
2739 0 0 unless $field->DefinedVar
2741 0 0 if ($field->DefinedValue)
2743 0 0 if ($field->GetType eq 'list-multi') { }
2855 0 0 unless ($query->DefinedMethodCall)
2865 0 0 unless ($query->GetMethodCall->DefinedMethodName)
2877 0 0 unless (exists $$self{'RPCCB'}{$methodName})
2891 0 0 if ($return[0] ne 'ok')
3051 0 0 if ($fromJID->GetUserID eq '') { }
0 0 elsif ($fromJID->GetResource eq '') { }
3055 0 0 if $query->DefinedMessage
3062 0 0 if $query->DefinedMessage
3069 0 0 if $query->DefinedMessage