Condition Coverage

lib/UR/DataSource/QueryPlan.pm
Criterion Covered Total %
condition 116 192 60.4


and 3 conditions

line !l l&&!r l&&r condition
328 630 0 25 @all_id_property_names == 1 and $all_id_property_names[0] eq 'id'
411 958 0 9 $property->is_calculated and $property->calculate_from
418 73 892 2 exists $filters{$property_name} and $filters{$property_name} eq 'isa'
514 118 1 5 $joins[$i]{'foreign_class'}->isa('UR::Value') and $joins[$i + 1]{'source_class'}->isa('UR::Value')
94 124 0 $i < $#joins and ($joins[$i]{'foreign_class'}->isa('UR::Value') and $joins[$i + 1]{'source_class'}->isa('UR::Value'))
540 0 8 86 @joins and $joins[-1]{'foreign_class'}->isa('UR::Value')
568 147 0 1 $foreign_class_object->join_hint and not $hints_included{$foreign_class_name}++
610 2 29 96 $final_accessor and $last_class_object->property_meta_for_name($final_accessor)
644 1 11 77 $final_accessor and grep {$_->[1]->property_name eq $final_accessor;} @{$$foreign_class_loading_data{'direct_table_properties'};}
775 39 0 185 $link_table_name and $link_column_name
813 871 0 0 $link_table_name and $link_column_name
979 148 0 0 not %$class_alias and $source_class_object->table_name
1022 1 0 137 $table_name and $column_name
1258 0 174 8 $table_name and $table_name =~ /^(.*)\s+(\w+)\s*$/s
1281 2064 284 0 $alias_data and exists $alias_data->{$alias}
1344 483 312 169 $db_column_data->[$resultset_col][1]->class_name eq $class_name and $db_column_data->[$resultset_col][1]->property_name eq $property_name
795 19 150 $db_column_data->[$resultset_col][1]->class_name eq $class_name and $db_column_data->[$resultset_col][1]->property_name eq $property_name and $db_column_data->[$resultset_col][3] == $object_num
1364 138 139 102 $db_column_data->[$resultset_col][1]->class_name eq $class_name and $db_column_data->[$resultset_col][1]->property_name eq $property_name
1464 110 2 2 $meta->property_name eq 'id' and $meta->class_name eq 'UR::Object'
1475 56 31 25 $meta->data_type and $meta->data_type =~ /::/
1540 630 0 25 @all_id_property_names == 1 and $all_id_property_names[0] eq 'id'
1878 99 0 44 @all_id_property_names == 1 and $all_id_property_names[0] eq 'id'

or 2 conditions

line l !l condition
201 688 0 $class_data->{'order_by_columns'} || []
972 148 0 $delegation_chain_data->{'__all__'}{'table_alias'} ||= {}
973 54 94 $delegation_chain_data->{$property_name}{'latest_source_table_and_column_names'} ||= []
978 148 0 $delegation_chain_data->{'__all__'}{'class_alias'} ||= {}
1325 344 60 $sql_property->data_type || ''
1340 152 0 $object_num ||= 0
1797 153 502 $rule_template->specifies_value_for('id') || undef
2160 69 74 $rule_template->specifies_value_for('id') || undef
2237 0 0 $rule_template->specifies_value_for('id') || undef

or 3 conditions

line l !l&&r !l&&!r condition
418 32 0 9 not exists $hints{$property_name} or exists $filters{$property_name}
483 12 82 0 $self->_delegation_chain_data || $self->_delegation_chain_data({})
566 0 148 0 $join->{'foreign_class_meta'} || $foreign_class_name->__meta__
640 38 0 89 @joins or $alias_for_property_value
867 0 0 0 $this_property_meta->column_name || $this
868 0 0 0 $prior_property_meta->column_name || $prior
971 148 0 0 $self->_delegation_chain_data || $self->_delegation_chain_data({})
976 0 148 0 $join->{'source_class_meta'} || $source_class_name->__meta__
984 0 148 0 $join->{'foreign_class_meta'} || $foreign_class_name->__meta__
992 0 4 144 not $foreign_data_source or $foreign_data_source ne $ds
1067 72 71 0 $join->sub_group_label || $property_name
1120 2 0 88 $$table_alias{$source_table_and_column_names->[$n][0]} || $source_table_and_column_names->[$n][2] || $source_table_and_column_names->[$n][0]
1128 134 3 0 $class_alias->{$link_table_name} || $source_class_object
1161 2 0 88 $$table_alias{$source_table_and_column_names->[$_][0]} || $source_table_and_column_names->[$_][2] || $source_table_and_column_names->[$_][0]
1290 137 0 0 $self->_alias_data || $self->_alias_data({})
1293 137 0 0 $self->_db_joins || $self->_db_joins([])
1301 137 0 0 $self->_alias_data || $self->_alias_data({})
1304 137 0 0 $self->_obj_joins || $self->_obj_joins([])
1310 76 0 0 $self->_alias_data || $self->_alias_data({})
1410 48 655 0 $first_table_name ||= $table_name
1489 27 17 70 $pmeta->is_optional or $pmeta->is_many
1562 655 0 1566 $class_name eq 'UR::Object' or not $class_name->isa('UR::Object')
1581 5 2 835 $property->is_calculated or $property->is_transient
1652 0 0 10 $final_accessor_meta->id_by or $final_accessor_meta->id_class_by
1666 0 114 0 $join->{'source_class_meta'} || $source_class_name->__meta__
1670 0 66 0 $join->{'foreign_class_meta'} || $foreign_class_name->__meta__
1672 3 0 63 $foreign_data_source ne $ds or not $ds->does_support_joins
3 0 63 $foreign_data_source ne $ds or not $ds->does_support_joins or not $foreign_data_source->does_support_joins
1737 14 0 46 $last_alias_for_this_chain || $source_table_and_column_names[$_][0]
1900 143 0 255 $class_name eq 'UR::Object' or not $class_name->isa('UR::Object')
2001 0 7 0 $join->{'source_class_meta'} || $source_class_name->__meta__
2004 0 7 0 $join->{'foreign_class_meta'} || $foreign_class_name->__meta__
2006 4 3 0 $foreign_data_source ne $ds or not $ds->does_support_joins
7 0 0 $foreign_data_source ne $ds or not $ds->does_support_joins or not $foreign_data_source->does_support_joins
2082 0 0 0 $last_alias_for_this_chain || $source_table_and_column_names[$_][0]
2153 547 0 12 not $_->[1]->is_calculated or $_->[1]->calculate_sql