Add RestEasy Reactive and OidcSecurity test #25798
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #25722.
@geoand FYI, see
TestSecurityLazyAuthTest
. The RestEasy Classic based test runs here: https://github.com/quarkusio/quarkus/blob/main/integration-tests/smallrye-jwt-token-propagation/src/test/java/io/quarkus/it/keycloak/TestSecurityLazyAuthTest.java,I've just copied that test and
ProtectedJwtResource
tointegration-tests/oidc-token-propagation-reactive
.JwtSecurity
extendsTestSecurity
and offers one option for supporting testing the endpoints which have an injectedJsonWebtoken
.It is processed here: https://github.com/quarkusio/quarkus/blob/main/test-framework/security-jwt/src/main/java/io/quarkus/test/security/jwt/JwtTestSecurityIdentityAugmentorProducer.java
and this test augmentor is initiated from here:
https://github.com/quarkusio/quarkus/blob/main/test-framework/security/src/main/java/io/quarkus/test/security/QuarkusSecurityTestExtension.java#L88.
So this
JwtTestSecurityIdentityAugmentorProducer
adds aJsonWebToken
instance to the currentSecurityIdentity
and this producer, https://github.com/quarkusio/quarkus/blob/main/extensions/oidc/runtime/src/main/java/io/quarkus/oidc/runtime/OidcJsonWebTokenProducer.java#L40, is expected to support the injection ofJsonWebToken
using this emulated token.this test gives NPE,
ProtectedJwtResource
throws it becauseJsonWebToken
remains null and is not injected.Have a look please when you can get a chance