From d50d9b6263ee7f1af6018ae01d1d36edba845e99 Mon Sep 17 00:00:00 2001 From: Oliver Drotbohm Date: Tue, 27 Aug 2024 12:50:44 +0200 Subject: [PATCH] Polishing. Related ticket GH-3054. --- ...eSpringDataWebSupportIntegrationTests.java | 29 ++++++++++--------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java b/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java index 75ca7709d..10c8909b3 100755 --- a/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java +++ b/src/test/java/org/springframework/data/web/config/EnableSpringDataWebSupportIntegrationTests.java @@ -23,7 +23,6 @@ import java.util.Arrays; import java.util.List; import org.junit.jupiter.api.Test; - import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; @@ -68,7 +67,7 @@ class EnableSpringDataWebSupportIntegrationTests { @Configuration @EnableWebMvc - @EnableSpringDataWebSupport(pageSerializationMode = EnableSpringDataWebSupport.PageSerializationMode.VIA_DTO) + @EnableSpringDataWebSupport static class SampleConfig { @Bean @@ -292,35 +291,39 @@ class EnableSpringDataWebSupportIntegrationTests { .isEqualTo(CustomEntityPathResolver.resolver); } - @Test // GH-3024 - void registersSpringDataWebSettingsBean() { + @Test // GH-3024, GH-3054 + void doesNotRegistersSpringDataWebSettingsBeanByDefault() { ApplicationContext context = WebTestUtils.createApplicationContext(SampleConfig.class); - assertThatNoException().isThrownBy(() -> context.getBean(SpringDataWebSettings.class)); + assertThatExceptionOfType(NoSuchBeanDefinitionException.class) + .isThrownBy(() -> context.getBean(SpringDataWebSettings.class)); assertThatNoException().isThrownBy(() -> context.getBean(PageModule.class)); } - @Test // GH-3024 + @Test // GH-3024, GH-3054 void usesDirectPageSerializationMode() throws Exception { - var applicationContext = WebTestUtils.createApplicationContext(PageSampleConfigWithDirect.class); + var context = WebTestUtils.createApplicationContext(PageSampleConfigWithDirect.class); - // SpringDataWebSettings shouldn't be registered if pageSerializationMode is default - assertThatExceptionOfType(NoSuchBeanDefinitionException.class).isThrownBy(() -> applicationContext.getBean(SpringDataWebSettings.class)); + assertThatExceptionOfType(NoSuchBeanDefinitionException.class) + .isThrownBy(() -> context.getBean(SpringDataWebSettings.class)); - var mvc = MockMvcBuilders.webAppContextSetup(applicationContext).build(); + var mvc = MockMvcBuilders.webAppContextSetup(context).build(); mvc.perform(post("/page"))// .andExpect(status().isOk()) // .andExpect(jsonPath("$.pageable").exists()); } - @Test // GH-3024 + @Test // GH-3024, GH-3054 void usesViaDtoPageSerializationMode() throws Exception { - var applicationContext = WebTestUtils.createApplicationContext(PageSampleConfigWithViaDto.class); - var mvc = MockMvcBuilders.webAppContextSetup(applicationContext).build(); + var context = WebTestUtils.createApplicationContext(PageSampleConfigWithViaDto.class); + + assertThatNoException().isThrownBy(() -> context.getBean(SpringDataWebSettings.class)); + + var mvc = MockMvcBuilders.webAppContextSetup(context).build(); mvc.perform(post("/page")) // .andExpect(status().isOk()) //