Condition Coverage

blib/lib/Venus/Role/Optional.pm
Criterion Covered Total %
condition 33 48 68.7


and 3 conditions

line !l l&&!r l&&r condition
31 0 0 5 $name and $self->can($name)
163 161 0 12 my $code = $self->can("assert_$name") and @data
217 169 0 8 my $code = $self->can("check_$name") and @data
235 119 4 23 my $code = $self->can("coerce_$name") and @data || exists $self->{$name}
241 0 0 24 $package->can('DOES') && $package->DOES('Venus::Role::Assertable')
243 0 9 0 &Scalar::Util::blessed($value) and not $value->isa($return)
253 154 0 16 my $code = $self->can("default_$name") and not @data
281 66 0 2 my $code = $self->can("read_$name") and not @data
336 1 3 2 &$code($self, @data) and not @data
346 160 1 15 my $code = $self->can("self_assert_$name") and @data
362 136 0 10 my $code = $self->can("self_coerce_$name") and @data || exists $self->{$name}

or 3 conditions

line l !l&&r !l&&!r condition
235 6 18 3 @data || exists $self->{$name}
243 15 0 9 not &Scalar::Util::blessed($value) or &Scalar::Util::blessed($value) and not $value->isa($return)
292 1 0 9 $self->can("readonly_$name") || $self->can('readonly')
310 1 0 10 $self->can("readwrite_$name") || $self->can('readwrite')
362 2 8 0 @data || exists $self->{$name}