From fccd9379d57ef98c0670af1233c85d1043295e76 Mon Sep 17 00:00:00 2001 From: Marcus Hert Da Coregio Date: Wed, 17 Jan 2024 08:47:28 -0300 Subject: [PATCH] WebTestUtilsTestRuntimeHints implements RuntimeHintsRegistrar Closes gh-14399 --- ...timeHints.java => WebTestUtilsRuntimeHints.java} | 10 +++++----- .../main/resources/META-INF/spring/aot.factories | 6 ++++-- ...ests.java => WebTestUtilsRuntimeHintsTests.java} | 13 ++++++------- 3 files changed, 15 insertions(+), 14 deletions(-) rename test/src/main/java/org/springframework/security/test/aot/hint/{WebTestUtilsTestRuntimeHints.java => WebTestUtilsRuntimeHints.java} (85%) rename test/src/test/java/org/springframework/security/test/aot/hint/{WebTestUtilsTestRuntimeHintsTests.java => WebTestUtilsRuntimeHintsTests.java} (87%) diff --git a/test/src/main/java/org/springframework/security/test/aot/hint/WebTestUtilsTestRuntimeHints.java b/test/src/main/java/org/springframework/security/test/aot/hint/WebTestUtilsRuntimeHints.java similarity index 85% rename from test/src/main/java/org/springframework/security/test/aot/hint/WebTestUtilsTestRuntimeHints.java rename to test/src/main/java/org/springframework/security/test/aot/hint/WebTestUtilsRuntimeHints.java index 2210b36363..6ca4fd51bd 100644 --- a/test/src/main/java/org/springframework/security/test/aot/hint/WebTestUtilsTestRuntimeHints.java +++ b/test/src/main/java/org/springframework/security/test/aot/hint/WebTestUtilsRuntimeHints.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2023 the original author or authors. + * Copyright 2002-2024 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -18,25 +18,25 @@ package org.springframework.security.test.aot.hint; import org.springframework.aot.hint.MemberCategory; import org.springframework.aot.hint.RuntimeHints; +import org.springframework.aot.hint.RuntimeHintsRegistrar; import org.springframework.aot.hint.TypeReference; import org.springframework.security.web.FilterChainProxy; import org.springframework.security.web.context.SecurityContextHolderFilter; import org.springframework.security.web.context.SecurityContextPersistenceFilter; import org.springframework.security.web.csrf.CsrfFilter; -import org.springframework.test.context.aot.TestRuntimeHintsRegistrar; import org.springframework.util.ClassUtils; /** - * {@link TestRuntimeHintsRegistrar} implementation that register runtime hints for + * {@link RuntimeHintsRegistrar} implementation that register runtime hints for * {@link org.springframework.security.test.web.support.WebTestUtils}. * * @author Marcus da Coregio * @since 6.0 */ -class WebTestUtilsTestRuntimeHints implements TestRuntimeHintsRegistrar { +class WebTestUtilsRuntimeHints implements RuntimeHintsRegistrar { @Override - public void registerHints(RuntimeHints hints, Class testClass, ClassLoader classLoader) { + public void registerHints(RuntimeHints hints, ClassLoader classLoader) { if (!ClassUtils.isPresent("jakarta.servlet.Filter", classLoader)) { return; } diff --git a/test/src/main/resources/META-INF/spring/aot.factories b/test/src/main/resources/META-INF/spring/aot.factories index 6bae612979..768bcfe08c 100644 --- a/test/src/main/resources/META-INF/spring/aot.factories +++ b/test/src/main/resources/META-INF/spring/aot.factories @@ -1,3 +1,5 @@ org.springframework.test.context.aot.TestRuntimeHintsRegistrar=\ -org.springframework.security.test.aot.hint.WithSecurityContextTestRuntimeHints,\ -org.springframework.security.test.aot.hint.WebTestUtilsTestRuntimeHints +org.springframework.security.test.aot.hint.WithSecurityContextTestRuntimeHints + +org.springframework.aot.hint.RuntimeHintsRegistrar=\ +org.springframework.security.test.aot.hint.WebTestUtilsRuntimeHints diff --git a/test/src/test/java/org/springframework/security/test/aot/hint/WebTestUtilsTestRuntimeHintsTests.java b/test/src/test/java/org/springframework/security/test/aot/hint/WebTestUtilsRuntimeHintsTests.java similarity index 87% rename from test/src/test/java/org/springframework/security/test/aot/hint/WebTestUtilsTestRuntimeHintsTests.java rename to test/src/test/java/org/springframework/security/test/aot/hint/WebTestUtilsRuntimeHintsTests.java index 53954aab57..128de6681f 100644 --- a/test/src/test/java/org/springframework/security/test/aot/hint/WebTestUtilsTestRuntimeHintsTests.java +++ b/test/src/test/java/org/springframework/security/test/aot/hint/WebTestUtilsRuntimeHintsTests.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2023 the original author or authors. + * Copyright 2002-2024 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,6 +21,7 @@ import org.junit.jupiter.api.Test; import org.springframework.aot.hint.MemberCategory; import org.springframework.aot.hint.RuntimeHints; +import org.springframework.aot.hint.RuntimeHintsRegistrar; import org.springframework.aot.hint.TypeReference; import org.springframework.aot.hint.predicate.RuntimeHintsPredicates; import org.springframework.core.io.support.SpringFactoriesLoader; @@ -28,26 +29,24 @@ import org.springframework.security.web.FilterChainProxy; import org.springframework.security.web.context.SecurityContextHolderFilter; import org.springframework.security.web.context.SecurityContextPersistenceFilter; import org.springframework.security.web.csrf.CsrfFilter; -import org.springframework.test.context.aot.TestRuntimeHintsRegistrar; import org.springframework.util.ClassUtils; import static org.assertj.core.api.Assertions.assertThat; /** - * Tests for {@link WebTestUtilsTestRuntimeHints}. + * Tests for {@link WebTestUtilsRuntimeHints}. * * @author Marcus da Coregio */ -class WebTestUtilsTestRuntimeHintsTests { +class WebTestUtilsRuntimeHintsTests { private final RuntimeHints hints = new RuntimeHints(); @BeforeEach void setup() { SpringFactoriesLoader.forResourceLocation("META-INF/spring/aot.factories") - .load(TestRuntimeHintsRegistrar.class) - .forEach((registrar) -> registrar.registerHints(this.hints, WebTestUtilsTestRuntimeHintsTests.class, - ClassUtils.getDefaultClassLoader())); + .load(RuntimeHintsRegistrar.class) + .forEach((registrar) -> registrar.registerHints(this.hints, ClassUtils.getDefaultClassLoader())); } @Test