Polishing
This commit is contained in:
parent
0c42965fc3
commit
fdf187ec46
|
|
@ -50,6 +50,7 @@ class SimpleAliasRegistryTests {
|
|||
private static final String ALIAS2 = "alias2";
|
||||
private static final String ALIAS3 = "alias3";
|
||||
// TODO Determine if we can make SimpleAliasRegistry.resolveAliases() reliable.
|
||||
// See https://github.com/spring-projects/spring-framework/issues/32024.
|
||||
// When ALIAS4 is changed to "test", various tests fail due to the iteration
|
||||
// order of the entries in the aliasMap in SimpleAliasRegistry.
|
||||
private static final String ALIAS4 = "alias4";
|
||||
|
|
@ -252,6 +253,7 @@ class SimpleAliasRegistryTests {
|
|||
}
|
||||
|
||||
// TODO Remove this test once we have implemented reliable processing in SimpleAliasRegistry.resolveAliases().
|
||||
// See https://github.com/spring-projects/spring-framework/issues/32024.
|
||||
// This method effectively duplicates the @ParameterizedTest version below,
|
||||
// with aliasX hard coded to ALIAS4; however, this method also hard codes
|
||||
// a different outcome that passes based on ConcurrentHashMap iteration order!
|
||||
|
|
@ -297,7 +299,7 @@ class SimpleAliasRegistryTests {
|
|||
}
|
||||
|
||||
@Disabled("Fails for some values unless alias registration order is honored")
|
||||
@ParameterizedTest
|
||||
@ParameterizedTest // gh-32024
|
||||
@ValueSource(strings = {"alias4", "test", "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"})
|
||||
void resolveAliasesWithComplexPlaceholderReplacementAndNameSwitching(String aliasX) {
|
||||
StringValueResolver valueResolver = new StubStringValueResolver(Map.of(
|
||||
|
|
|
|||
|
|
@ -16,16 +16,13 @@
|
|||
|
||||
package org.springframework.web.servlet.config.annotation;
|
||||
|
||||
import java.nio.charset.Charset;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.springframework.cache.concurrent.ConcurrentMapCache;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.http.CacheControl;
|
||||
import org.springframework.web.accept.ContentNegotiationManager;
|
||||
import org.springframework.web.context.support.GenericWebApplicationContext;
|
||||
|
|
@ -137,19 +134,15 @@ class ResourceHandlerRegistryTests {
|
|||
this.registration.resourceChain(true).addResolver(mockResolver).addTransformer(mockTransformer);
|
||||
|
||||
ResourceHttpRequestHandler handler = getHandler("/resources/**");
|
||||
List<ResourceResolver> resolvers = handler.getResourceResolvers();
|
||||
assertThat(resolvers).hasSize(4);
|
||||
assertThat(resolvers).element(0).isInstanceOf(CachingResourceResolver.class);
|
||||
CachingResourceResolver cachingResolver = (CachingResourceResolver) resolvers.get(0);
|
||||
assertThat(cachingResolver.getCache()).isInstanceOf(ConcurrentMapCache.class);
|
||||
assertThat(resolvers).element(1).isEqualTo(mockResolver);
|
||||
assertThat(resolvers).element(2).isInstanceOf(WebJarsResourceResolver.class);
|
||||
assertThat(resolvers).element(3).isInstanceOf(PathResourceResolver.class);
|
||||
|
||||
List<ResourceTransformer> transformers = handler.getResourceTransformers();
|
||||
assertThat(transformers).hasSize(2);
|
||||
assertThat(transformers).element(0).isInstanceOf(CachingResourceTransformer.class);
|
||||
assertThat(transformers).element(1).isEqualTo(mockTransformer);
|
||||
assertThat(handler.getResourceResolvers()).satisfiesExactly(
|
||||
zero -> assertThat(zero).isInstanceOfSatisfying(CachingResourceResolver.class,
|
||||
cachingResolver -> assertThat(cachingResolver.getCache()).isInstanceOf(ConcurrentMapCache.class)),
|
||||
one -> assertThat(one).isEqualTo(mockResolver),
|
||||
two -> assertThat(two).isInstanceOf(WebJarsResourceResolver.class),
|
||||
three -> assertThat(three).isInstanceOf(PathResourceResolver.class));
|
||||
assertThat(handler.getResourceTransformers()).satisfiesExactly(
|
||||
zero -> assertThat(zero).isInstanceOf(CachingResourceTransformer.class),
|
||||
one -> assertThat(one).isEqualTo(mockTransformer));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -157,13 +150,9 @@ class ResourceHandlerRegistryTests {
|
|||
this.registration.resourceChain(false);
|
||||
|
||||
ResourceHttpRequestHandler handler = getHandler("/resources/**");
|
||||
List<ResourceResolver> resolvers = handler.getResourceResolvers();
|
||||
assertThat(resolvers).hasSize(2);
|
||||
assertThat(resolvers).element(0).isInstanceOf(WebJarsResourceResolver.class);
|
||||
assertThat(resolvers).element(1).isInstanceOf(PathResourceResolver.class);
|
||||
|
||||
List<ResourceTransformer> transformers = handler.getResourceTransformers();
|
||||
assertThat(transformers).isEmpty();
|
||||
assertThat(handler.getResourceResolvers()).hasExactlyElementsOfTypes(
|
||||
WebJarsResourceResolver.class, PathResourceResolver.class);
|
||||
assertThat(handler.getResourceTransformers()).isEmpty();
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -175,17 +164,13 @@ class ResourceHandlerRegistryTests {
|
|||
this.registration.resourceChain(true).addResolver(versionResolver);
|
||||
|
||||
ResourceHttpRequestHandler handler = getHandler("/resources/**");
|
||||
List<ResourceResolver> resolvers = handler.getResourceResolvers();
|
||||
assertThat(resolvers).hasSize(4);
|
||||
assertThat(resolvers).element(0).isInstanceOf(CachingResourceResolver.class);
|
||||
assertThat(resolvers).element(1).isSameAs(versionResolver);
|
||||
assertThat(resolvers).element(2).isInstanceOf(WebJarsResourceResolver.class);
|
||||
assertThat(resolvers).element(3).isInstanceOf(PathResourceResolver.class);
|
||||
|
||||
List<ResourceTransformer> transformers = handler.getResourceTransformers();
|
||||
assertThat(transformers).hasSize(2);
|
||||
assertThat(transformers).element(0).isInstanceOf(CachingResourceTransformer.class);
|
||||
assertThat(transformers).element(1).isInstanceOf(CssLinkResourceTransformer.class);
|
||||
assertThat(handler.getResourceResolvers()).satisfiesExactly(
|
||||
zero -> assertThat(zero).isInstanceOf(CachingResourceResolver.class),
|
||||
one -> assertThat(one).isSameAs(versionResolver),
|
||||
two -> assertThat(two).isInstanceOf(WebJarsResourceResolver.class),
|
||||
three -> assertThat(three).isInstanceOf(PathResourceResolver.class));
|
||||
assertThat(handler.getResourceTransformers()).hasExactlyElementsOfTypes(
|
||||
CachingResourceTransformer.class, CssLinkResourceTransformer.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
@ -224,10 +209,8 @@ class ResourceHandlerRegistryTests {
|
|||
assertThat(handler.getUrlPathHelper()).isNotNull();
|
||||
|
||||
List<ResourceResolver> resolvers = handler.getResourceResolvers();
|
||||
PathResourceResolver resolver = (PathResourceResolver) resolvers.get(resolvers.size()-1);
|
||||
Map<Resource, Charset> locationCharsets = resolver.getLocationCharsets();
|
||||
assertThat(locationCharsets).hasSize(1);
|
||||
assertThat(locationCharsets.values()).element(0).isEqualTo(StandardCharsets.ISO_8859_1);
|
||||
PathResourceResolver resolver = (PathResourceResolver) resolvers.get(resolvers.size() - 1);
|
||||
assertThat(resolver.getLocationCharsets()).hasSize(1).containsValue(StandardCharsets.ISO_8859_1);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
|
|
|||
Loading…
Reference in New Issue