Branch Coverage

blib/lib/DBR/Record/Helper.pm
Criterion Covered Total %
branch 65 120 54.1


line true false branch
34 0 27 unless $$self{'session'}
35 0 27 unless $$self{'instance'}
36 0 27 unless $$self{'scope'}
38 0 27 unless $$self{'tablemap'}
39 0 27 unless $$self{'pkmap'}
40 0 27 unless $$self{'flookup'}
41 0 27 unless defined $$self{'lastidx'}
53 0 4 unless my $field = $$self{'flookup'}{$fieldname}
54 0 4 if $field->is_readonly
56 0 4 unless my $setvalue = $field->makevalue($params{$fieldname})
57 0 4 unless $setvalue->count == 1
59 0 4 unless my $setobj = 'DBR::Query::Part::Set'->new($field, $setvalue)
65 0 4 unless $ct > 0
68 0 4 if ($ct > 1)
70 0 0 unless $dbrh = $$self{'instance'}->connect
75 0 4 unless $self->_set($record, $table_id, $sets{$table_id})
78 0 4 if $ct > 1
90 0 8 unless my $setvalue = $field->makevalue($value)
91 0 8 unless $setvalue->count == 1
93 0 8 unless my $setobj = 'DBR::Query::Part::Set'->new($field, $setvalue)
104 0 12 unless my($outwhere, $table) = $self->_pk_where($record, $table_id)
106 0 12 unless my $query = 'DBR::Query::Update'->new('session', $$self{'session'}, 'instance', $$self{'instance'}, 'tables', $table, 'where', $outwhere, 'sets', $sets)
114 0 12 unless my $rv = $query->run
128 0 1 if scalar keys %{$$self{'tablemap'};} > 1
132 0 1 unless my($outwhere, $table) = $self->_pk_where($record, $table_id)
134 0 1 unless my $query = 'DBR::Query::Delete'->new('session', $$self{'session'}, 'instance', $$self{'instance'}, 'tables', $table, 'where', $outwhere)
141 0 1 unless $query->run
157 0 42 if defined $idx and exists $$record[$idx]
159 0 42 unless $$self{'scope'}->addfield($field)
161 0 42 unless my($outwhere, $table) = $self->_pk_where($record, $field->table_id)
167 0 42 unless my $query = 'DBR::Query::Select'->new('session', $$self{'session'}, 'instance', $$self{'instance'}, 'tables', $table, 'where', $outwhere, 'fields', [$newfield])
175 0 42 unless my $sth = $query->run
177 0 42 unless $sth->execute
178 0 42 unless my $row = $sth->fetchrow_arrayref
184 6 36 $want_sref ? :
199 18 12 if defined $ridx and exists $$record[$ridx]
205 0 12 unless my $table = $relation->table
206 0 12 unless my $maptable = $relation->maptable
207 0 12 unless my $mapfield = $relation->mapfield
211 6 6 if (defined $fidx and exists $$record[$fidx]) { }
217 0 6 unless defined $sref
220 0 6 unless defined $fidx
226 12 0 unless ($mapfield->is_nullable)
230 2 10 unless (scalar @allvals)
233 2 0 $to1 ? :
239 0 10 unless my $scope = 'DBR::Config::Scope'->new('session', $$self{'session'}, 'conf_instance', $maptable->conf_instance, 'extra_ident', $maptable->name, 'offset', 2)
246 0 10 unless my $pk = $maptable->primary_key
247 0 10 unless my $prefields = $scope->fields
253 0 10 unless ($relation->is_same_schema)
254 0 0 unless $mapinstance = $maptable->schema->get_instance($mapinstance->class)
258 0 10 unless my $query = 'DBR::Query::Select'->new('session', $$self{'session'}, 'instance', $mapinstance, 'tables', $maptable, 'where', $outwhere, 'fields', \@fields, 'scope', $scope, 'splitfield', $mapfield)
269 6 4 if ($rowcount > 1) { }
271 2 4 if ($to1) { }
272 0 2 unless my $resultset = 'DBR::ResultSet'->new($query)
274 0 2 unless my $resultmap = $resultset->hashmap_single($mapfield->name)
304 0 4 unless my $resultset = 'DBR::ResultSet'->new($query)
306 4 0 if ($to1)
327 0 55 unless my $value = $part->makevalue($$record[$part->index])
328 0 55 unless my $outfield = 'DBR::Query::Part::Compare'->new('field', $part, 'value', $value)
345 26 56 unless (defined $idx)