Branch Coverage

blib/lib/Rose/DB/Object/Metadata/Relationship/ManyToMany.pm
Criterion Covered Total %
branch 44 92 47.8


line true false branch
141 0 0 if (@_)
146 0 0 if (ref $arg eq 'HASH') { }
0 0 elsif (not ref $arg && UNIVERSAL::isa($arg, $map_class)) { }
155 0 0 $weaken ? :
171 62 9 unless @_
175 9 0 if (my $method = $args->{'with_map_records'})
177 9 0 unless $method =~ /^[A-Za-z_]\w*$/
189 14 28 if ($type eq 'get_set' or $type eq 'get_set_now' or $type eq 'get_set_on_save') { }
14 14 elsif ($type eq 'add_now' or $type eq 'add_on_save') { }
14 0 elsif ($type eq 'find') { }
0 0 elsif ($type eq 'iterator') { }
0 0 elsif ($type eq 'count') { }
217 0 2 unless defined $self->map_class
244 0 21 unless my $map_class = $self->map_class
246 0 21 unless (UNIVERSAL::isa($map_class, 'Rose::DB::Object'))
252 0 21 unless my $map_meta = $map_class->meta
261 0 21 unless my $meta = $target_class->meta
281 28 28 if ($item->isa('Rose::DB::Object::Metadata::ForeignKey')) { }
28 0 elsif ($item->isa('Rose::DB::Object::Metadata::Relationship')) { }
288 28 0 if $seen_fk{$item->id}
291 14 14 if ($item->can('class') and $item->class eq $target_class)
295 14 0 unless ($map_from and $item->name ne $map_from)
297 0 14 if (%map_column_to_self_method)
308 14 0 $item->can('column_map') ? :
314 0 14 unless my $foreign_method = $meta->column_accessor_method_name($foreign_column)
326 14 0 if ($item->isa('Rose::DB::Object::Metadata::ForeignKey') or $item->type eq 'many to one')
331 0 14 if $map_to and $item->name ne $map_to
335 0 14 if ($require_objects)
346 0 14 unless (UNIVERSAL::isa($map_to_class, 'Rose::DB::Object'))
352 0 14 unless $map_to_meta = $map_to_class->meta
356 14 0 $item->can('column_map') ? :
362 0 14 unless my $local_method = $map_meta->column_accessor_method_name($local_column)
367 0 14 unless my $foreign_method = $map_to_meta->column_accessor_method_name($foreign_column)
388 7 14 unless (%map_column_to_self_method)
395 0 14 unless (%map_column_to_self_column)
402 0 14 unless ($require_objects)
410 0 0 if ($item->isa('Rose::DB::Object::Metadata::Relationship'))
412 0 0 if $seen_fk{$item->id}
415 0 0 if ($item->isa('Rose::DB::Object::Metadata::ForeignKey') || $item->type eq 'many to one' and $item->class eq $target_class and $item->name ne $local_rel)
419 0 0 if ($require_objects)
440 0 14 unless ($require_objects)
447 0 14 unless ($foreign_class)
456 7 14 if ($error)
458 0 7 if ($Debug or $Rose::DB::Object::Metadata::Debug)
465 0 7 unless UNIVERSAL::isa($error, 'Rose::DB::Object::Exception::ClassNotReady')
468 7 14 $error ? :