Condition Coverage

blib/lib/Sys/Export/ISO9660.pm
Criterion Covered Total %
condition 99 237 41.7


and 2 conditions

line l !l condition
387 0 4 $_->{'extent'} and _write_file($fh, $_->{'extent'})
400 0 10 $_ and _write_file($fh, $_)
405 0 2 $_->{'file'} and _write_file($fh, $_->{'file'})
586 0 2 !$is_dir && ';1'

and 3 conditions

line !l l&&!r l&&r condition
126 0 0 0 builtin::blessed($x) and $x->can("device_offset")
138 0 0 1 builtin::blessed($x) and $x->can("device_offset")
196 1 0 0 $_->{'platform'} == $platform && $_->{'id_string'} eq $section_id
276 1 1 0 defined $data_ref and not ref $data_ref
280 0 0 0 $data_ref and length $$data_ref != $size
293 0 0 0 $cur and $cur->{'file'}
356 0 5 34 $size and defined $file->data
414 4 26 35 $sec_size and not defined $_->device_offset
4 0 26 $sec_size and $_->device_offset > 0
478 3 0 1 $lim and $lim <= $reserve_lba
560 0 0 24 $file && $file->start_lba
561 0 0 24 $file && $file->size
570 0 24 0 $file && $file->mtime
0 4 20 $file && $file->flags
669 0 0 5 length $le == $path_tables->{'le'}->size and length $be == $path_tables->{'be'}->size
0 0 5 length $le == $path_tables->{'le'}->size and length $be == $path_tables->{'be'}->size and length $jle == $path_tables->{'jle'}->size
0 0 5 length $le == $path_tables->{'le'}->size and length $be == $path_tables->{'be'}->size and length $jle == $path_tables->{'jle'}->size and length $jbe == $path_tables->{'jbe'}->size
786 30 0 0 builtin::blessed($thing) and $thing->can("device_offset")
815 28 0 2 builtin::blessed($spec) and $spec->can("device_offset")

or 2 conditions

line l !l condition
169 0 4 $bootable //= 136
170 1 0 $extent->size // 0
195 1 3 $self->{'boot_catalog'}{'sections'} //= []
321 0 0 $ent->{'file'}->device_offset // 0
413 63 2 $_->size // 0
560 24 0 ($ent->{'extent_lba'} // $file && $file->start_lba) // 0
561 24 0 ($ent->{'size'} // $file && $file->size) // 0
562 0 24 $ent->{'seq'} // 1
570 0 24 $ent->{'ext_attr_len'} // 0
20 4 ($ent->{'flags'} // $file && $file->flags) // 0
0 24 $ent->{'unit_size'} // 0
0 24 $ent->{'gap_size'} // 0
782 5 5 $attrs->{'type_code'} // 0
791 2 8 $self->volume_label // "CDROM"

or 3 conditions

line l !l&&r !l&&!r condition
160 0 4 0 $extent //= "Sys::Export::Extent"->new("name", "Boot Catalog $platform Boot Image")
165 0 1 0 $size //= length $$data
170 0 4 0 $media_type //= $platform == "EFI" ? "EMU_NONE" : (($extent->size // 0) > 1474560 ? "EMU_NONE" : "EMU_FLOPPY144")
176 0 4 0 $load_segment //= $media_type == "EMU_NONE" ? 0 : 1984
179 0 4 0 $system_type //= $platform == "EFI" ? 239 : 0
180 0 4 0 $section_id //= $platform == "x86" ? "x86" : ($platform == "PowerPC" ? "PowerPC" : ($platform == "Mac" ? "Mac" : ($platform == "EFI" ? "UEFI" : "Platform $platform")))
242 0 2 0 defined $spec->{'uname'} or defined $spec->{'name'}
246 0 2 0 $spec->{'uname'} // &decode("UTF-8", $spec->{'name'}, 9)
283 0 1 0 $size //= length $$data_ref
330 1 4 0 $self->{'default_time'} //= &Sys::Export::ISO9660::time()
354 39 0 0 defined $file->size or defined $file->data
355 39 0 0 $file->size // length ${$file->data;}
457 35 0 0 not $lim or $lim - $start > $sector_count
481 1 0 0 not $lim or $reserve_lim < $lim
501 3 5 0 $_->{'file'} //= $self->_new_file($_->name, "flags", "FLAG_DIRECTORY")
502 3 5 0 $_->{'joliet_file'} //= $self->_new_file($_->name . ' [J]', "flags", $_->file->flags)
511 0 0 3 $_->{'dir'} || $_->{'file'} && $_->{'file'}->is_dir
560 0 24 0 $ent->{'extent_lba'} // $file && $file->start_lba
561 0 24 0 $ent->{'size'} // $file && $file->size
570 0 0 24 $ent->{'mtime'} // $file && $file->mtime
0 24 0 ($ent->{'mtime'} // $file && $file->mtime) // $self->{'default_time'}
0 20 4 $ent->{'flags'} // $file && $file->flags
585 0 0 2 $_->{'dir'} || $_->{'file'}->is_dir
737 203 189 0 $attrs->{$name} // $default
392 0 0 ($attrs->{$name} // $default) // croak("No value supplied for $name, and no default")
747 0 177 0 utf8::is_utf8($val) or utf8::downgrade($val, 1)
790 0 10 0 $self->system // uc $^O
0 10 0 $attrs->{'system_id'} //= $self->system // uc $^O
791 0 10 0 $attrs->{'volume_id'} //= $self->volume_label // "CDROM"
792 0 10 0 $attrs->{'volume_space'} //= $self->{'_free_invlist'}[-1]
793 0 10 0 $attrs->{'path_sz'} //= $attrs->{'path_le'}->size
794 10 0 0 $attrs->{'path_le'} //= $attrs->{'path_le'}->lba
795 10 0 0 $attrs->{'path_be'} //= $attrs->{'path_be'}->lba
796 0 10 0 $attrs->{'root_dirent'} //= $self->_encode_dirent("\0", $attrs->{'root_file'})
797 0 10 0 $attrs->{'btime'} // $self->{'default_time'}
0 10 0 $attrs->{'creation_ts'} //= _pack_iso_volume_datetime($attrs->{'btime'} // $self->{'default_time'})
798 0 10 0 $attrs->{'mtime'} // $self->{'default_time'}
0 10 0 $attrs->{'modification_ts'} //= _pack_iso_volume_datetime($attrs->{'mtime'} // $self->{'default_time'})
801 0 0 10 $attrs->{'vol_set_id'} //= $self->volume_set
802 0 0 10 $attrs->{'pub_id'} //= &$maybe_file_ref($self->publisher)
803 0 10 0 &$maybe_file_ref($self->preparer) // "PERL SYS::EXPORT::ISO9660 $VERSION"
0 10 0 $attrs->{'prep_id'} //= &$maybe_file_ref($self->preparer) // "PERL SYS::EXPORT::ISO9660 $VERSION"
804 0 0 10 $attrs->{'app_id'} //= &$maybe_file_ref($self->application)
805 0 10 0 $attrs->{'copy_id'} //= $self->_get_metadata_filename($self->copyright_file, $is_joliet)
806 0 10 0 $attrs->{'abs_id'} //= $self->_get_metadata_filename($self->abstract_file, $is_joliet)
807 0 10 0 $attrs->{'bib_id'} //= $self->_get_metadata_filename($self->bibliographic_file, $is_joliet)
820 0 0 0 $self->root->entry($spec) // croak("Can't find $spec in root directory")
869 3 3 0 $boot_catalog->{'extent'} //= "Sys::Export::Extent"->new("name", "El Torrito Boot Catalog", "block_size", 2048)