diff --git a/test-framework/junit-component/pom.xml b/test-framework/junit-component/pom.xml index a6c912a0d1d7c..1e13f6379c375 100644 --- a/test-framework/junit-component/pom.xml +++ b/test-framework/junit-component/pom.xml @@ -63,6 +63,11 @@ smallrye-common-annotation + + io.smallrye.config + smallrye-config-source-yaml + test + org.jboss.logmanager jboss-logmanager diff --git a/test-framework/junit-component/src/main/java/io/quarkus/test/component/QuarkusComponentTestExtension.java b/test-framework/junit-component/src/main/java/io/quarkus/test/component/QuarkusComponentTestExtension.java index d4d172ad7c59c..ca50a87014d92 100644 --- a/test-framework/junit-component/src/main/java/io/quarkus/test/component/QuarkusComponentTestExtension.java +++ b/test-framework/junit-component/src/main/java/io/quarkus/test/component/QuarkusComponentTestExtension.java @@ -525,6 +525,7 @@ private void startContainer(ExtensionContext context, Lifecycle testInstanceLife // We intentionally skip system properties and ENV variables by default // See https://github.com/quarkusio/quarkus/issues/48899 for more details .addPropertiesSources() + .addDiscoveredSources() .withSources( new QuarkusComponentTestConfigSource(configProperties, configuration.configSourceOrdinal)); diff --git a/test-framework/junit-component/src/test/java/io/quarkus/test/component/ApplicationYamlConfigSourceTest.java b/test-framework/junit-component/src/test/java/io/quarkus/test/component/ApplicationYamlConfigSourceTest.java new file mode 100644 index 0000000000000..02a5718347899 --- /dev/null +++ b/test-framework/junit-component/src/test/java/io/quarkus/test/component/ApplicationYamlConfigSourceTest.java @@ -0,0 +1,32 @@ +package io.quarkus.test.component; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +import jakarta.inject.Inject; +import jakarta.inject.Singleton; + +import org.eclipse.microprofile.config.inject.ConfigProperty; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.RegisterExtension; + +public class ApplicationYamlConfigSourceTest { + + @RegisterExtension + static final QuarkusComponentTestExtension extension = QuarkusComponentTestExtension.builder() + .build(); + + @Inject + YamlComponent component; + + @Test + public void testYamlConfig() { + assertEquals("from-yaml", component.yamlProperty); + } + + @Singleton + public static class YamlComponent { + + @ConfigProperty(name = "org.acme.yaml-property") + String yamlProperty; + } +} diff --git a/test-framework/junit-component/src/test/resources/application.yaml b/test-framework/junit-component/src/test/resources/application.yaml new file mode 100644 index 0000000000000..7999a7c5c22a7 --- /dev/null +++ b/test-framework/junit-component/src/test/resources/application.yaml @@ -0,0 +1,3 @@ +org: + acme: + yaml-property: from-yaml