Merge branch '3.0.x'

pull/34482/head
Phillip Webb 2 years ago
commit e7c668ac71

@ -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"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -17,6 +17,9 @@
package org.springframework.boot.configurationprocessor.tests; package org.springframework.boot.configurationprocessor.tests;
import java.io.IOException; 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.BeforeAll;
import org.junit.jupiter.api.Test; 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.ConfigurationMetadataProperty;
import org.springframework.boot.configurationmetadata.ConfigurationMetadataRepository; import org.springframework.boot.configurationmetadata.ConfigurationMetadataRepository;
import org.springframework.boot.configurationmetadata.ConfigurationMetadataRepositoryJsonBuilder; import org.springframework.boot.configurationmetadata.ConfigurationMetadataRepositoryJsonBuilder;
import org.springframework.core.io.ClassPathResource; import org.springframework.util.CollectionUtils;
import org.springframework.core.io.Resource;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
@ -40,12 +42,20 @@ class ConfigurationProcessorIntegrationTests {
@BeforeAll @BeforeAll
static void readMetadata() throws IOException { static void readMetadata() throws IOException {
Resource resource = new ClassPathResource("META-INF/spring-configuration-metadata.json"); repository = ConfigurationMetadataRepositoryJsonBuilder.create(getResource().openStream()).build();
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();
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 @Test

Loading…
Cancel
Save