|
|
|
|
@ -1,5 +1,5 @@
@@ -1,5 +1,5 @@
|
|
|
|
|
/* |
|
|
|
|
* Copyright 2012-2019 the original author or authors. |
|
|
|
|
* Copyright 2012-2023 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. |
|
|
|
|
@ -17,6 +17,9 @@
@@ -17,6 +17,9 @@
|
|
|
|
|
package org.springframework.boot.configurationprocessor.tests; |
|
|
|
|
|
|
|
|
|
import java.io.IOException; |
|
|
|
|
import java.net.URL; |
|
|
|
|
import java.util.ArrayList; |
|
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
|
|
import org.junit.jupiter.api.BeforeAll; |
|
|
|
|
import org.junit.jupiter.api.Test; |
|
|
|
|
@ -24,8 +27,7 @@ import org.junit.jupiter.api.Test;
@@ -24,8 +27,7 @@ import org.junit.jupiter.api.Test;
|
|
|
|
|
import org.springframework.boot.configurationmetadata.ConfigurationMetadataProperty; |
|
|
|
|
import org.springframework.boot.configurationmetadata.ConfigurationMetadataRepository; |
|
|
|
|
import org.springframework.boot.configurationmetadata.ConfigurationMetadataRepositoryJsonBuilder; |
|
|
|
|
import org.springframework.core.io.ClassPathResource; |
|
|
|
|
import org.springframework.core.io.Resource; |
|
|
|
|
import org.springframework.util.CollectionUtils; |
|
|
|
|
|
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat; |
|
|
|
|
|
|
|
|
|
@ -40,12 +42,20 @@ class ConfigurationProcessorIntegrationTests {
@@ -40,12 +42,20 @@ class ConfigurationProcessorIntegrationTests {
|
|
|
|
|
|
|
|
|
|
@BeforeAll |
|
|
|
|
static void readMetadata() throws IOException { |
|
|
|
|
Resource resource = new ClassPathResource("META-INF/spring-configuration-metadata.json"); |
|
|
|
|
assertThat(resource.exists()).isTrue(); |
|
|
|
|
// Make sure the right file is detected
|
|
|
|
|
assertThat(resource.getURL().toString()).contains("spring-boot-configuration-processor-tests"); |
|
|
|
|
repository = ConfigurationMetadataRepositoryJsonBuilder.create(resource.getInputStream()).build(); |
|
|
|
|
repository = ConfigurationMetadataRepositoryJsonBuilder.create(getResource().openStream()).build(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private static URL getResource() throws IOException { |
|
|
|
|
ClassLoader classLoader = ConfigurationProcessorIntegrationTests.class.getClassLoader(); |
|
|
|
|
List<URL> urls = new ArrayList<>(); |
|
|
|
|
CollectionUtils.toIterator(classLoader.getResources("META-INF/spring-configuration-metadata.json")) |
|
|
|
|
.forEachRemaining(urls::add); |
|
|
|
|
for (URL url : urls) { |
|
|
|
|
if (url.toString().contains("spring-boot-configuration-processor-tests")) { |
|
|
|
|
return url; |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
throw new IllegalStateException("Unable to find correct configuration-metadata resource from " + urls); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Test |
|
|
|
|
|