Branch Coverage

blib/lib/Mongoose/Engine.pm
Criterion Covered Total %
branch 0 156 0.0


line true false branch
20 0 0 if (my $duplicate = &first(sub { &refaddr($self) == &refaddr($_); } , @scope))
23 0 0 unless defined $class and $ref_id
24 0 0 if $self->_id and $self->_id eq $ref_id
34 0 0 if (my $attr = $self->meta->get_attribute($key))
35 0 0 if $attr->does('Mongoose::Meta::Attribute::Trait::DoNotMongoSerialize')
38 0 0 if $attr->does('Mongoose::Meta::Attribute::Trait::Raw')
40 0 0 if (my $type = $attr->type_constraint)
41 0 0 if ($type->is_a_type_of('Num')) { }
0 0 elsif ($type->is_a_type_of('FileHandle')) { }
64 0 0 if (my $class = &blessed($value)) { }
0 0 elsif (ref $value eq 'ARRAY') { }
0 0 elsif (ref $value eq 'HASH') { }
65 0 0 if (ref $value eq 'HASH' and defined(my $ref_id = $value->{'_id'}))
79 0 0 if ($aryclass and $aryclass->does('Mongoose::EmbeddedDocument')) { }
0 0 elsif ($aryclass and $aryclass->does('Mongoose::Document')) { }
99 0 0 if (&blessed($value->{$key})) { }
0 0 elsif (ref $value->{$key} eq 'ARRAY') { }
119 0 0 if ($class->can('meta')) { }
0 0 elsif (not $class =~ /^(?: DateTime(?:\:\:Tiny)? | boolean )$/x) { }
120 0 0 if ($class->does('Mongoose::EmbeddedDocument')) { }
0 0 elsif ($class->does('Mongoose::Document')) { }
0 0 elsif ($class->isa('Mongoose::Join')) { }
121 0 0 unless $ret = $obj->collapse(@scope, $self)
138 0 0 if ($reftype eq 'ARRAY') { }
0 0 elsif ($reftype eq 'SCALAR') { }
0 0 elsif ($reftype eq 'HASH') { }
152 0 0 unless ref $scope eq 'HASH'
155 0 0 if (ref $doc eq 'MongoDB::DBRef')
157 0 0 defined $$scope{$doc->id} ? :
165 0 0 unless exists $doc->{$name}
166 0 0 if $attr->does('Mongoose::Meta::Attribute::Trait::Raw')
168 0 0 unless my $type = $attr->type_constraint
169 0 0 unless my $class = $self->_get_blessed_type($type)
171 0 0 if ($type->is_a_type_of('HashRef')) { }
0 0 elsif ($type->is_a_type_of('ArrayRef')) { }
0 0 elsif ($type->is_a_type_of('FileHandle')) { }
173 0 0 if (defined $type->{'type_parameter'})
175 0 0 if (my $param_class = $param->{'class'})
176 0 0 unless $doc->{$name}
185 0 0 if (defined $type->{'type_parameter'})
188 0 0 if (my $param_class = $param->{'class'}) { }
190 0 0 unless $doc->{$name}
193 0 0 if ($param_class->does('Mongoose::EmbeddedDocument')) { }
0 0 elsif ($param_class->does('Mongoose::Document')) { }
197 0 0 if (my $circ_doc = $$scope{$item->id}) { }
201 0 0 if (my $obj = $param_class->find_one({'_id', $item->id}, undef, $scope))
224 0 0 if ($class->can('meta')) { }
226 0 0 if ($class->does('Mongoose::EmbeddedDocument')) { }
0 0 elsif ($class->does('Mongoose::Document')) { }
0 0 elsif ($class->isa('Mongoose::Join')) { }
230 0 0 if (ref $doc->{$name} eq 'MongoDB::DBRef')
232 0 0 if (my $circ_doc = $$scope{"$_id"}) { }
253 0 0 if (my $data_class = ref $data) { }
254 0 0 $data_class eq 'boolean' ? :
262 0 0 unless defined $doc
266 0 0 if (defined $attr) { }
289 0 0 unless scalar @fields
306 0 0 unless defined $doc
308 0 0 if (my $id = $self->_id) { }
313 0 0 if (ref 'Mongoose'->class_config($self)->{'pk'}) { }
331 0 0 unless ($x->_id)
336 0 0 if (@unsaved)
350 0 0 unless my $class = $type->name
352 0 0 unless defined $parent
353 0 0 if $parent eq 'Object'
361 0 0 if (ref $args) { }
0 0 elsif (my $pk = $self->_primary_key_query) { }
389 0 0 unless $new_collection
393 0 0 if (ref $new_collection eq 'MongoDB::Collection') { }
0 0 elsif ($new_collection) { }
395 0 0 if ($is_singleton) { }
405 0 0 if ($is_singleton) { }
417 0 0 unless 'Mongoose'->class_config($self)->{'pk'}
420 0 0 if @pairs == @keys * 2
442 0 0 if (@_ == 1 and !ref($_[0]) || ref $_[0] eq 'MongoDB::OID') { }
443 0 0 ref $_[0] ? :
444 0 0 if (my $doc = $self->collection->find_one($query))
450 0 0 if (my $doc = $self->collection->find_one($query, $fields))