Condition Coverage

blib/lib/WWW/Zitadel/OIDC.pm
Criterion Covered Total %
condition 38 52 73.0


and 3 conditions

line !l l&&!r l&&r condition
88 4 8 1 not $force and $self->_jwks_cache
122 0 1 3 $@ and not $args{'no_retry'}
171 1 0 2 $args{'client_id'} and $args{'client_secret'}
231 0 1 1 defined $refresh_token and length $refresh_token

or 2 conditions

line l !l condition
57 13 1 $self->_discovery->{'jwks_uri'} // die("No jwks_uri in discovery document\n")
63 5 0 $self->_discovery->{'token_endpoint'} // die("No token_endpoint in discovery document\n")
69 3 1 $self->_discovery->{'userinfo_endpoint'} // die("No userinfo_endpoint in discovery document\n")
75 0 1 $self->_discovery->{'authorization_endpoint'} // die("No authorization_endpoint in discovery document\n")
81 2 1 $self->_discovery->{'introspection_endpoint'} // die("No introspection_endpoint in discovery document\n")
86 4 9 $args{'force_refresh'} // 0
119 0 4 $args{'verify_exp'} // 1
0 4 $args{'verify_iat'} // 0
0 4 $args{'verify_nbf'} // 0
0 4 $args{'accepted_key_alg'} // ["RS256", "RS384", "RS512"]
133 0 3 $args{'verify_exp'} // 1
0 3 $args{'verify_iat'} // 0
0 3 $args{'verify_nbf'} // 0
0 3 $args{'accepted_key_alg'} // ["RS256", "RS384", "RS512"]
180 1 1 $args{'token_type_hint'} // "access_token"
195 4 1 delete $args{'grant_type'} // die("WWW::Zitadel::Error::Validation"->new("message", "grant_type required"))
217 1 1 delete $args{'client_id'} // die("WWW::Zitadel::Error::Validation"->new("message", "client_id required"))
219 1 0 delete $args{'client_secret'} // die("WWW::Zitadel::Error::Validation"->new("message", "client_secret required"))
245 2 1 delete $args{'code'} // die("WWW::Zitadel::Error::Validation"->new("message", "code required"))
247 1 1 delete $args{'redirect_uri'} // die("WWW::Zitadel::Error::Validation"->new("message", "redirect_uri required"))