Branch Coverage

blib/lib/Geo/GDAL.pm
Criterion Covered Total %
branch 248 558 44.4


line true false branch
255 18 0 if defined $self
260 32 32 unless ($self->isa('SCALAR'))
261 0 32 unless $self->isa('HASH')
263 0 32 unless defined $self
268 32 32 if (exists $OWNER{$self})
273 0 64 if ($code)
301 0 0 unless $_[0]->isa('HASH')
303 0 0 unless defined $self
305 0 0 if (exists $OWNER{$self})
342 61 61 unless ($self->isa('SCALAR'))
343 0 61 unless $self->isa('HASH')
345 0 61 unless defined $self
350 60 62 if (exists $OWNER{$self})
355 1 121 if ($code)
493 10 0 if defined $self
498 20 20 unless ($self->isa('SCALAR'))
499 0 20 unless $self->isa('HASH')
501 0 20 unless defined $self
506 10 30 if (exists $OWNER{$self})
511 0 40 if ($code)
547 3 0 if defined $self
552 5 5 unless ($self->isa('SCALAR'))
553 0 5 unless $self->isa('HASH')
555 0 5 unless defined $self
560 3 7 if (exists $OWNER{$self})
565 0 10 if ($code)
615 0 0 if defined $self
619 0 0 unless $_[0]->isa('HASH')
621 0 0 unless defined $self
623 0 0 if (exists $OWNER{$self})
655 0 0 if defined $self
659 0 0 unless $_[0]->isa('HASH')
661 0 0 unless defined $self
663 0 0 if (exists $OWNER{$self})
692 0 0 if defined $self
696 0 0 unless $_[0]->isa('HASH')
698 0 0 unless defined $self
700 0 0 if (exists $OWNER{$self})
729 2 0 if defined $self
733 2 2 unless $_[0]->isa('HASH')
735 0 2 unless defined $self
737 2 0 if (exists $OWNER{$self})
766 0 0 if defined $self
770 0 0 unless $_[0]->isa('HASH')
772 0 0 unless defined $self
774 0 0 if (exists $OWNER{$self})
803 0 0 if defined $self
807 0 0 unless $_[0]->isa('HASH')
809 0 0 unless defined $self
811 0 0 if (exists $OWNER{$self})
840 0 0 if defined $self
844 0 0 unless $_[0]->isa('HASH')
846 0 0 unless defined $self
848 0 0 if (exists $OWNER{$self})
877 0 0 if defined $self
881 0 0 unless $_[0]->isa('HASH')
883 0 0 unless defined $self
885 0 0 if (exists $OWNER{$self})
914 0 0 if defined $self
918 0 0 unless $_[0]->isa('HASH')
920 0 0 unless defined $self
922 0 0 if (exists $OWNER{$self})
951 0 0 if defined $self
955 0 0 unless $_[0]->isa('HASH')
957 0 0 unless defined $self
959 0 0 if (exists $OWNER{$self})
1118 13 0 if (@_)
1120 2 11 if (@_ == 3) { }
1122 2 0 if ($ecode == 1) { }
0 0 elsif ($ecode == 2) { }
1124 2 0 if defined $offender
1140 0 0 wantarray ? :
1167 2 756 ref $parameters->[0] eq 'HASH' ? :
1168 745 13 if (@p)
1170 66 679 if (@p % 2 == 0 and defined $c and exists $c{$c}) { }
1173 0 205 unless defined $c{$c} and exists $defaults{$c{$c}}
1180 0 3373 if (not &blessed($p[$i]) and ref $p[$i] ne $t)
1181 0 0 $t eq '' ? :
1197 1 1123 if defined $default and not defined $string
1198 1 1123 unless defined $string
1199 87 747 if $int2string_hash and exists $int2string_hash->{$string}
1200 2 1034 unless exists $string2int_hash->{$string}
1237 307 0 if $type =~ /^\d/
1262 0 12 unless exists $Geo::GDAL::TYPE_STRING2INT{$t}
1264 1 11 if $t =~ /Byte/
1265 1 10 if $t =~ /UInt16/
1266 2 8 if $t =~ /Int16/
1267 1 7 if $t =~ /UInt32/
1268 2 5 if $t =~ /Int32/
1269 2 3 if $t =~ /Float32/
1270 2 1 if $t =~ /Float64/
1279 41 14 if exists $Geo::GDAL::TYPE_INT2STRING{$t}
1280 0 55 unless exists $Geo::GDAL::TYPE_STRING2INT{$t}
1282 24 31 if $t =~ /^Byte$/
1283 0 2 $is_big_endian ? :
2 29 if $t =~ /^UInt16$/
1284 2 27 if $t =~ /^Int16$/
1285 0 1 $is_big_endian ? :
1 26 if $t =~ /^UInt32$/
1286 10 16 if $t =~ /^Int32$/
1287 2 14 if $t =~ /^Float32$/
1288 6 8 if $t =~ /^Float64$/
1295 220 86 if $driver->TestCapability('RASTER')
1305 110 43 if $driver->TestCapability('RASTER')
1311 3 57 unless @_
1323 0 2 unless $o{uc $p->{'access'}}
1326 0 2 unless $o{uc $p->{'type'}}
1327 0 2 unless uc $p->{'type'} eq 'ANY'
1329 0 2 unless ($dataset)
1331 0 0 unless uc $p->{'type'} eq 'ANY'
1341 0 2 unless $p[1] eq 'ReadOnly' or $p[1] eq 'Update'
1342 2 0 if $p[1] eq 'ReadOnly'
1343 0 2 if $p[1] eq 'Update'
1345 0 2 unless $dataset
1351 0 6 unless ($p)
1356 6 0 if ($p->{'flags'})
1359 0 8 unless exists $Geo::GDAL::OF_STRING2INT{$flag}
1369 0 0 unless $params[3] =~ /^\d/
1375 0 1 if $p[2]
1381 1 1 if $p[2]
1394 0 0 if (defined $p[$i] and ref $p[$i])
1404 2 0 if (ref $o eq 'HASH')
1406 2 0 unless ($key =~ /^-/)
1430 0 0 if defined $desc
1431 0 0 if defined wantarray
1435 0 0 ref $_[0] ? :
1438 0 0 if defined $metadata
1439 0 0 if defined wantarray
1468 1 2 unless $self
1473 8 10 if defined $test and $test eq 'YES'
1481 447 173 defined $h && $h eq 'YES' ? :
1500 1 0 if ($h)
1503 1 0 if ($value eq 'CreationOptionList')
1509 39 111 if ($key eq 'Value') { }
1525 1 0 if $h->{'DMD_CREATIONDATATYPES'}
1531 1 51 if ($name and &blessed($name))
1541 1 51 if ($object)
1542 1 0 if ($ds) { }
1549 1 51 if $@
1550 0 51 unless $ds
1580 0 0 if $p[1] eq 'ReadOnly'
1581 0 0 if $p[1] eq 'Update'
1583 0 0 unless $dataset
1641 0 52 unless $band
1652 3 0 unless defined wantarray
1674 0 0 defined $name ? :
1676 0 0 unless $layer
1703 0 16 if $p->{'fields'} and ref $p->{'fields'} ne 'ARRAY'
1704 0 16 if (defined $p->{'schema'})
1706 0 0 if exists $s->{'GeometryType'}
1707 0 0 if exists $s->{'Fields'}
1708 0 0 if exists $s->{'Name'}
1710 8 8 unless ref $p->{'fields'} eq 'ARRAY'
1713 3 10 if ($f->{'GeometryType'} or exists $Geo::OGR::Geometry::TYPE_STRING2INT{$f->{'Type'}})
1732 1 1 if $layer->GetName eq $name
1734 0 1 unless defined $index
1740 0 0 if defined $proj
1741 0 0 if defined wantarray
1746 0 0 if defined $sr
1747 0 0 if (defined wantarray)
1749 0 0 unless $p
1757 4 3 if (@_ == 1) { }
1 2 elsif (@_ > 1) { }
1763 0 7 if $@
1764 3 4 unless defined wantarray
1766 0 4 if (wantarray) { }
1784 0 0 unless $gt->NorthUp
1787 0 0 if $xoff < 0
1789 0 0 if $yoff < 0
1791 0 0 if $xsize > $w - $xoff
1793 0 0 if $ysize > $h - $yoff
1799 0 0 if (@_ > 0)
1801 0 0 if $proj and ref $proj
1804 0 0 unless defined wantarray
1878 1 0 if $p[0]
1882 0 1 if $@
1888 0 2 if ($name and &blessed($name))
1898 0 2 if ($object)
1899 0 0 if ($ds) { }
1906 0 2 if $@
1924 0 0 if ($b and $b eq 'Geo::GDAL::Dataset') { }
1942 0 0 if ($self->_GetRasterBand(1)) { }
1959 0 2 if $p->{$srs} and &blessed($p->{$srs})
1963 1 0 if $warped
1971 1 1 unless ref $self eq 'ARRAY'
1972 0 2 if ($b and $b eq 'Geo::GDAL::Dataset') { }
2004 0 0 if ($b and $b eq 'Geo::GDAL::Dataset') { }
2018 0 0 unless ref $sources eq 'ARRAY' and defined $sources->[0]
2020 0 0 if (not &blessed($dest)) { }
2021 0 0 if (&blessed($sources->[0])) { }
2027 0 0 if (&blessed($sources->[0])) { }
2053 1 2 if ($cion eq 'RedBand')
2054 1 1 if ($cion eq 'GreenBand')
2055 1 0 if ($cion eq 'BlueBand')
2080 1 2 if ($cion eq 'RedBand')
2081 1 1 if ($cion eq 'GreenBand')
2082 1 0 if ($cion eq 'BlueBand')
2150 54 54 unless ($self->isa('SCALAR'))
2151 0 54 unless $self->isa('HASH')
2153 0 54 unless defined $self
2156 0 108 if (exists $Geo::GDAL::Band::OWNER{$self})
2189 2 6 if (@_ > 0)
2190 2 0 if (defined $_[0]) { }
2201 1 1 if (@_ > 0)
2206 1 1 unless defined wantarray
2212 1 1 if @_ > 0 and defined $_[0]
2213 1 1 if @_ > 1 and defined $_[1]
2214 1 1 unless defined wantarray
2249 0 15 if ($xsize > $self->{'XSize'} - $xoff)
2254 0 15 if ($ysize > $self->{'YSize'} - $yoff)
2267 11 15 if (defined $ci)
2271 11 15 unless defined wantarray
2277 9 9 if @_ and defined $_[0]
2278 8 10 unless defined wantarray
2284 0 0 if @_
2285 0 0 unless defined wantarray
2292 2 1 if @_ and defined $_[0]
2293 1 2 unless defined wantarray
2295 2 0 if $r
2310 0 3 if $p->{'progress'} and not defined $p->{'progressdata'}
2333 0 0 unless ($p->{'idfield'} =~ /^[+-]?\d+$/ or $fields{$p->{'idfield'}})
2336 0 0 unless ($p->{'elevfield'} =~ /^[+-]?\d+$/ or $fields{$p->{'elevfield'}})
2337 0 0 $self->DataType =~ /Float/ ? :
2343 0 0 unless $p->{$_} =~ /^[+-]?\d+$/
2345 0 0 if $p->{'progress'} and not defined $p->{'progressdata'}
2355 1 1 unless $mask
2403 0 660 unless defined $p->{'buf'}
2413 2 6 if $f & $Geo::GDAL::Band::MASK_FLAGS{$flag}
2415 2 0 wantarray ? :
2421 0 1 if (@_ and $_[0] =~ /^\d$/) { }
2425 0 1 unless $Geo::GDAL::Band::MASK_FLAGS{$flag}
2452 0 0 if $datatype < 0
2495 0 1 $dt =~ /Float/ ? :
2501 0 1 if $p->{'options'}{'Connectedness'}
2502 1 0 if ($leInt32 or $p->{'options'}{'ForceIntPixel'}) { }
2508 0 0 if 'was'->it('here'->created((return $p->{'outlayer'})))
2514 1 0 unless ($p->{'dest'})
2519 1 0 if ($p->{'options'}{'Connectedness'})
2534 1 0 unless ($p->{'distance'})
2568 11 1 if (ref $_[0] eq 'ARRAY') { }
2576 0 12 if $@
2582 5 262 if @_
2583 5 262 unless defined wantarray
2584 262 0 wantarray ? :
2590 2 3 if (@_)
2597 0 5 unless defined wantarray
2672 0 0 if (@_)
2690 8 220 if $usage eq $color and $type ne 'Integer'
2699 57 0 if defined $_[3]
2700 0 57 unless defined wantarray
2706 0 0 if @_ > 0
2707 0 0 unless defined wantarray
2709 0 0 $a[0] ? :
2795 1 1 if (not $recursive) { }
2799 0 1 if $f eq '..' or $f eq '.'
2801 1 0 if ($s[0] eq 'f') { }
0 0 elsif ($s[0] eq 'd') { }
2811 0 2 if ($@)
2812 0 0 $recursive ? :
2840 2 6 if (@_ == 0) { }
4 2 elsif (@_ == 1) { }
2860 1 1 if (ref $p eq 'ARRAY') { }
2870 0 2 unless @$gcps
2889 0 0 if defined wantarray
2897 0 0 if $x < $e->[0]
2898 0 0 if $x > $e->[2]
2901 0 0 if $y < $e->[1]
2902 0 0 if $y > $e->[3]
2917 0 0 if (@_ == 0) { }
0 0 elsif (ref $_[0]) { }
2940 0 0 unless $self->Overlaps($e)
2942 0 0 if $self->[0] < $e->[0]
2943 0 0 if $self->[1] < $e->[1]
2944 0 0 if $self->[2] > $e->[2]
2945 0 0 if $self->[3] > $e->[3]
2951 0 0 if $e->[0] < $self->[0]
2952 0 0 if $e->[1] < $self->[1]
2953 0 0 if $e->[2] > $self->[2]
2954 0 0 if $e->[3] > $self->[3]