Condition Coverage

blib/lib/WebService/GrowthBook.pm
Criterion Covered Total %
condition 48 98 48.9


and 3 conditions

line !l l&&!r l&&r condition
99 39 0 0 builtin::blessed($feature) and $feature->isa("WebService::GrowthBook::Feature")
338 69 0 0 $sticky_bucket_service and not $experiment->disableStickyBucketing
362 62 1 2 $experiment->namespace and not in_namespace($hash_value, $experiment->namespace)
397 64 1 1 $experiment->condition and not eval_condition($self->attributes, $experiment->condition)
422 65 0 0 $experiment->groups and @{$experiment->groups;}
528 53 0 0 $sticky_bucket_service and not $experiment->disable_sticky_bucketing
540 0 0 0 $doc and $data->{'changed'}
795 161 11 0 !$val || $val eq '' and $fallback_attr
172 0 0 !$val || $val eq '' and $fallback_attr and $self->{'sticky_bucket_service'}

or 2 conditions

line l !l condition
423 0 0 $groups || {}
456 65 0 $experiment->hash_version // 1
541 0 0 $sticky_bucket_assignment_docs //= {}
575 0 0 $sticky_bucket_assignment_docs->{$key}{'assignments'} // {}
618 4 4 $filter->{'attribute'} // "id"
623 8 0 $filter->{'seed'} // ""
0 8 $filter->{'hashVersion'} // 2
719 61 21 $args{'variation_id'} // -1
720 53 29 $args{'hash_used'} // 0
723 53 29 $args{'sticky_bucket_used'} // 0
761 7 0 $hash_version || 1
785 172 0 $attr ||= "id"
789 161 4 $attributes->{$attr} || ''
791 0 0 $user->{$attr} || ''
797 0 0 $attributes->{$fallback_attr} || ''
799 0 0 $user->{$fallback_attr} || ''

or 3 conditions

line l !l&&r !l&&!r condition
170 1 15 0 $rule->seed || $feature_name
196 4 8 0 $rule->key || $feature_name
253 82 0 0 not $prev or $prev->{'result'}->in_experiment != $result->in_experiment
82 0 0 not $prev or $prev->{'result'}->in_experiment != $result->in_experiment or $prev->{'result'}->variation_id != $result->variation_id
319 0 1 74 $experiment->status eq "draft" or not $experiment->active
407 0 0 0 $prereq_res eq "gate" or $prereq_res eq "fail"
456 4 61 0 $experiment->seed // $experiment->key
469 7 58 0 $experiment->ranges || get_bucket_ranges(scalar @{$experiment->variations;}, defined $c ? $c : 1, $experiment->weights)
657 0 0 0 $merged{$k} //= $sticky_bucket_assignment_docs->{$key}{'assignments'}{$k}
725 22 1 59 $variation_id < 0 or $variation_id > @{$experiment->variations;} - 1
751 5 3 8 defined $coverage or defined $range
795 11 0 161 !$val || $val eq ''
802 0 0 0 not $val or $val ne ""