Skip to content

Commit fe3e428

Browse files
committed
Explicitly trigger static init of SharedContainerConfig early in extension lifecycle
1 parent 34c8681 commit fe3e428

1 file changed

Lines changed: 7 additions & 0 deletions

File tree

core/src/main/java/org/microshed/testing/jupiter/MicroShedTestExtension.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
import org.junit.jupiter.api.extension.ExtensionContext;
3232
import org.junit.platform.commons.support.AnnotationSupport;
3333
import org.microshed.testing.ApplicationEnvironment;
34+
import org.microshed.testing.SharedContainerConfig;
3435
import org.microshed.testing.jaxrs.RESTClient;
3536
import org.microshed.testing.jaxrs.RestClientBuilder;
3637
import org.microshed.testing.jwt.JwtBuilder;
@@ -50,6 +51,12 @@ class MicroShedTestExtension implements BeforeAllCallback {
5051
@Override
5152
public void beforeAll(ExtensionContext context) throws Exception {
5253
Class<?> testClass = context.getRequiredTestClass();
54+
55+
// Explicitly trigger static initialization of any SharedContainerConfig before we do further processing
56+
if (testClass.isAnnotationPresent(SharedContainerConfig.class)) {
57+
Class.forName(testClass.getAnnotation(SharedContainerConfig.class).value().getName());
58+
}
59+
5360
ApplicationEnvironment config = ApplicationEnvironment.Resolver.load();
5461
LOG.info("Using ApplicationEnvironment class: " + config.getClass().getCanonicalName());
5562
config.applyConfiguration(testClass);

0 commit comments

Comments
 (0)