Browse Source

Merge branch '6.1.x'

pull/32550/head
Sébastien Deleuze 2 years ago
parent
commit
96d9081190
  1. 1
      spring-test/src/main/java/org/springframework/mock/web/MockFilterConfig.java
  2. 2
      spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java
  3. 1
      spring-test/src/main/java/org/springframework/mock/web/MockHttpSession.java
  4. 3
      spring-test/src/main/java/org/springframework/mock/web/MockMultipartHttpServletRequest.java
  5. 1
      spring-test/src/main/java/org/springframework/mock/web/MockServletConfig.java
  6. 3
      spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java
  7. 1
      spring-test/src/main/java/org/springframework/mock/web/MockSessionCookieConfig.java
  8. 1
      spring-test/src/main/java/org/springframework/mock/web/reactive/function/server/MockServerRequest.java
  9. 3
      spring-test/src/main/java/org/springframework/test/context/ApplicationContextFailureProcessor.java
  10. 3
      spring-test/src/main/java/org/springframework/test/context/SmartContextLoader.java
  11. 3
      spring-test/src/main/java/org/springframework/test/context/hint/TestContextRuntimeHints.java
  12. 2
      spring-test/src/main/java/org/springframework/test/context/support/DynamicValuesPropertySource.java
  13. 1
      spring-test/src/main/java/org/springframework/test/context/support/TestPropertySourceUtils.java
  14. 1
      spring-test/src/main/java/org/springframework/test/context/testng/AbstractTestNGSpringContextTests.java
  15. 1
      spring-test/src/main/java/org/springframework/test/context/transaction/TransactionalTestExecutionListener.java
  16. 3
      spring-test/src/main/java/org/springframework/test/web/client/response/ExecutingResponseCreator.java
  17. 2
      spring-test/src/main/java/org/springframework/test/web/servlet/DefaultMvcResult.java
  18. 6
      spring-test/src/main/java/org/springframework/test/web/servlet/TestDispatcherServlet.java
  19. 1
      spring-test/src/main/java/org/springframework/test/web/servlet/htmlunit/HtmlUnitRequestBuilder.java
  20. 5
      spring-test/src/main/java/org/springframework/test/web/servlet/setup/StubWebApplicationContext.java
  21. 5
      spring-test/src/test/java/org/springframework/test/context/failures/TrackingApplicationContextFailureProcessor.java

1
spring-test/src/main/java/org/springframework/mock/web/MockFilterConfig.java

@ -97,6 +97,7 @@ public class MockFilterConfig implements FilterConfig { @@ -97,6 +97,7 @@ public class MockFilterConfig implements FilterConfig {
}
@Override
@Nullable
public String getInitParameter(String name) {
Assert.notNull(name, "Parameter name must not be null");
return this.initParameters.get(name);

2
spring-test/src/main/java/org/springframework/mock/web/MockHttpServletRequest.java

@ -383,6 +383,7 @@ public class MockHttpServletRequest implements HttpServletRequest { @@ -383,6 +383,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
// ---------------------------------------------------------------------
@Override
@Nullable
public Object getAttribute(String name) {
checkActive();
return this.attributes.get(name);
@ -637,6 +638,7 @@ public class MockHttpServletRequest implements HttpServletRequest { @@ -637,6 +638,7 @@ public class MockHttpServletRequest implements HttpServletRequest {
}
@Override
@Nullable
public String[] getParameterValues(String name) {
Assert.notNull(name, "Parameter name must not be null");
return this.parameters.get(name);

1
spring-test/src/main/java/org/springframework/mock/web/MockHttpSession.java

@ -148,6 +148,7 @@ public class MockHttpSession implements HttpSession { @@ -148,6 +148,7 @@ public class MockHttpSession implements HttpSession {
}
@Override
@Nullable
public Object getAttribute(String name) {
assertIsValid();
Assert.notNull(name, "Attribute name must not be null");

3
spring-test/src/main/java/org/springframework/mock/web/MockMultipartHttpServletRequest.java

@ -96,6 +96,7 @@ public class MockMultipartHttpServletRequest extends MockHttpServletRequest impl @@ -96,6 +96,7 @@ public class MockMultipartHttpServletRequest extends MockHttpServletRequest impl
}
@Override
@Nullable
public MultipartFile getFile(String name) {
return this.multipartFiles.getFirst(name);
}
@ -117,6 +118,7 @@ public class MockMultipartHttpServletRequest extends MockHttpServletRequest impl @@ -117,6 +118,7 @@ public class MockMultipartHttpServletRequest extends MockHttpServletRequest impl
}
@Override
@Nullable
public String getMultipartContentType(String paramOrFileName) {
MultipartFile file = getFile(paramOrFileName);
if (file != null) {
@ -154,6 +156,7 @@ public class MockMultipartHttpServletRequest extends MockHttpServletRequest impl @@ -154,6 +156,7 @@ public class MockMultipartHttpServletRequest extends MockHttpServletRequest impl
}
@Override
@Nullable
public HttpHeaders getMultipartHeaders(String paramOrFileName) {
MultipartFile file = getFile(paramOrFileName);
if (file != null) {

1
spring-test/src/main/java/org/springframework/mock/web/MockServletConfig.java

@ -93,6 +93,7 @@ public class MockServletConfig implements ServletConfig { @@ -93,6 +93,7 @@ public class MockServletConfig implements ServletConfig {
}
@Override
@Nullable
public String getInitParameter(String name) {
Assert.notNull(name, "Parameter name must not be null");
return this.initParameters.get(name);

3
spring-test/src/main/java/org/springframework/mock/web/MockServletContext.java

@ -224,6 +224,7 @@ public class MockServletContext implements ServletContext { @@ -224,6 +224,7 @@ public class MockServletContext implements ServletContext {
}
@Override
@Nullable
public ServletContext getContext(String contextPath) {
if (this.contextPath.equals(contextPath)) {
return this;
@ -376,6 +377,7 @@ public class MockServletContext implements ServletContext { @@ -376,6 +377,7 @@ public class MockServletContext implements ServletContext {
}
@Override
@Nullable
public RequestDispatcher getNamedDispatcher(String path) {
return this.namedRequestDispatchers.get(path);
}
@ -465,6 +467,7 @@ public class MockServletContext implements ServletContext { @@ -465,6 +467,7 @@ public class MockServletContext implements ServletContext {
}
@Override
@Nullable
public String getInitParameter(String name) {
Assert.notNull(name, "Parameter name must not be null");
return this.initParameters.get(name);

1
spring-test/src/main/java/org/springframework/mock/web/MockSessionCookieConfig.java

@ -136,6 +136,7 @@ public class MockSessionCookieConfig implements SessionCookieConfig { @@ -136,6 +136,7 @@ public class MockSessionCookieConfig implements SessionCookieConfig {
}
@Override
@Nullable
public String getAttribute(String name) {
return this.attributes.get(name);
}

1
spring-test/src/main/java/org/springframework/mock/web/reactive/function/server/MockServerRequest.java

@ -569,6 +569,7 @@ public final class MockServerRequest implements ServerRequest { @@ -569,6 +569,7 @@ public final class MockServerRequest implements ServerRequest {
}
@Override
@Nullable
public InetSocketAddress host() {
return delegate().getHost();
}

3
spring-test/src/main/java/org/springframework/test/context/ApplicationContextFailureProcessor.java

@ -17,6 +17,7 @@ @@ -17,6 +17,7 @@
package org.springframework.test.context;
import org.springframework.context.ApplicationContext;
import org.springframework.lang.Nullable;
/**
* Strategy for components that process failures related to application contexts
@ -41,6 +42,6 @@ public interface ApplicationContextFailureProcessor { @@ -41,6 +42,6 @@ public interface ApplicationContextFailureProcessor {
* @param context the application context that did not load successfully
* @param exception the exception thrown while loading the application context
*/
void processLoadFailure(ApplicationContext context, Throwable exception);
void processLoadFailure(ApplicationContext context, @Nullable Throwable exception);
}

3
spring-test/src/main/java/org/springframework/test/context/SmartContextLoader.java

@ -17,7 +17,6 @@ @@ -17,7 +17,6 @@
package org.springframework.test.context;
import org.springframework.context.ApplicationContext;
import org.springframework.lang.Nullable;
/**
* Strategy interface for loading an {@link ApplicationContext} for an integration
@ -157,7 +156,7 @@ public interface SmartContextLoader extends ContextLoader { @@ -157,7 +156,7 @@ public interface SmartContextLoader extends ContextLoader {
*/
@Override
@SuppressWarnings("deprecation")
default String[] processLocations(Class<?> clazz, @Nullable String... locations) {
default String[] processLocations(Class<?> clazz, String... locations) {
throw new UnsupportedOperationException("""
SmartContextLoader does not support the ContextLoader SPI. \
Call processContextConfiguration(ContextConfigurationAttributes) instead.""");

3
spring-test/src/main/java/org/springframework/test/context/hint/TestContextRuntimeHints.java

@ -26,6 +26,7 @@ import org.springframework.aot.hint.RuntimeHints; @@ -26,6 +26,7 @@ import org.springframework.aot.hint.RuntimeHints;
import org.springframework.aot.hint.RuntimeHintsRegistrar;
import org.springframework.aot.hint.TypeHint;
import org.springframework.aot.hint.TypeReference;
import org.springframework.lang.Nullable;
import org.springframework.util.ClassUtils;
/**
@ -39,7 +40,7 @@ import org.springframework.util.ClassUtils; @@ -39,7 +40,7 @@ import org.springframework.util.ClassUtils;
class TestContextRuntimeHints implements RuntimeHintsRegistrar {
@Override
public void registerHints(RuntimeHints runtimeHints, ClassLoader classLoader) {
public void registerHints(RuntimeHints runtimeHints, @Nullable ClassLoader classLoader) {
boolean servletPresent = ClassUtils.isPresent("jakarta.servlet.Servlet", classLoader);
boolean groovyPresent = ClassUtils.isPresent("groovy.lang.Closure", classLoader);

2
spring-test/src/main/java/org/springframework/test/context/support/DynamicValuesPropertySource.java

@ -20,6 +20,7 @@ import java.util.Map; @@ -20,6 +20,7 @@ import java.util.Map;
import java.util.function.Supplier;
import org.springframework.core.env.MapPropertySource;
import org.springframework.lang.Nullable;
import org.springframework.util.function.SupplierUtils;
/**
@ -38,6 +39,7 @@ class DynamicValuesPropertySource extends MapPropertySource { @@ -38,6 +39,7 @@ class DynamicValuesPropertySource extends MapPropertySource {
}
@Override
@Nullable
public Object getProperty(String name) {
return SupplierUtils.resolve(super.getProperty(name));
}

1
spring-test/src/main/java/org/springframework/test/context/support/TestPropertySourceUtils.java

@ -459,6 +459,7 @@ public abstract class TestPropertySourceUtils { @@ -459,6 +459,7 @@ public abstract class TestPropertySourceUtils {
private final LinkedHashMap<String, Object> map = new LinkedHashMap<>();
@Override
@Nullable
public Object put(Object key, Object value) {
if (key instanceof String str) {
return this.map.put(str, value);

1
spring-test/src/main/java/org/springframework/test/context/testng/AbstractTestNGSpringContextTests.java

@ -198,6 +198,7 @@ public abstract class AbstractTestNGSpringContextTests implements IHookable, App @@ -198,6 +198,7 @@ public abstract class AbstractTestNGSpringContextTests implements IHookable, App
}
@Nullable
private Throwable getTestResultException(ITestResult testResult) {
Throwable testResultException = testResult.getThrowable();
if (testResultException instanceof InvocationTargetException) {

1
spring-test/src/main/java/org/springframework/test/context/transaction/TransactionalTestExecutionListener.java

@ -155,6 +155,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis @@ -155,6 +155,7 @@ public class TransactionalTestExecutionListener extends AbstractTestExecutionLis
protected final TransactionAttributeSource attributeSource = new AnnotationTransactionAttributeSource(false) {
@Override
@Nullable
protected TransactionAttribute findTransactionAttribute(Class<?> clazz) {
// @Transactional present in inheritance hierarchy?
TransactionAttribute result = super.findTransactionAttribute(clazz);

3
spring-test/src/main/java/org/springframework/test/web/client/response/ExecutingResponseCreator.java

@ -21,6 +21,7 @@ import java.io.IOException; @@ -21,6 +21,7 @@ import java.io.IOException;
import org.springframework.http.client.ClientHttpRequest;
import org.springframework.http.client.ClientHttpRequestFactory;
import org.springframework.http.client.ClientHttpResponse;
import org.springframework.lang.Nullable;
import org.springframework.mock.http.client.MockClientHttpRequest;
import org.springframework.test.web.client.ResponseCreator;
import org.springframework.util.Assert;
@ -59,7 +60,7 @@ public class ExecutingResponseCreator implements ResponseCreator { @@ -59,7 +60,7 @@ public class ExecutingResponseCreator implements ResponseCreator {
@Override
public ClientHttpResponse createResponse(ClientHttpRequest request) throws IOException {
public ClientHttpResponse createResponse(@Nullable ClientHttpRequest request) throws IOException {
Assert.state(request instanceof MockClientHttpRequest, "Expected a MockClientHttpRequest");
MockClientHttpRequest mockRequest = (MockClientHttpRequest) request;
ClientHttpRequest newRequest = this.requestFactory.createRequest(mockRequest.getURI(), mockRequest.getMethod());

2
spring-test/src/main/java/org/springframework/test/web/servlet/DefaultMvcResult.java

@ -127,7 +127,7 @@ class DefaultMvcResult implements MvcResult { @@ -127,7 +127,7 @@ class DefaultMvcResult implements MvcResult {
return RequestContextUtils.getOutputFlashMap(this.mockRequest);
}
public void setAsyncResult(Object asyncResult) {
public void setAsyncResult(@Nullable Object asyncResult) {
this.asyncResult.set(asyncResult);
}

6
spring-test/src/main/java/org/springframework/test/web/servlet/TestDispatcherServlet.java

@ -98,7 +98,7 @@ final class TestDispatcherServlet extends DispatcherServlet { @@ -98,7 +98,7 @@ final class TestDispatcherServlet extends DispatcherServlet {
WebAsyncUtils.getAsyncManager(request).registerCallableInterceptor(KEY,
new CallableProcessingInterceptor() {
@Override
public <T> void postProcess(NativeWebRequest r, Callable<T> task, Object value) {
public <T> void postProcess(NativeWebRequest r, Callable<T> task, @Nullable Object value) {
// We got the result, must also wait for the dispatch
getMvcResult(request).setAsyncResult(value);
}
@ -107,7 +107,7 @@ final class TestDispatcherServlet extends DispatcherServlet { @@ -107,7 +107,7 @@ final class TestDispatcherServlet extends DispatcherServlet {
WebAsyncUtils.getAsyncManager(request).registerDeferredResultInterceptor(KEY,
new DeferredResultProcessingInterceptor() {
@Override
public <T> void postProcess(NativeWebRequest r, DeferredResult<T> result, Object value) {
public <T> void postProcess(NativeWebRequest r, DeferredResult<T> result, @Nullable Object value) {
getMvcResult(request).setAsyncResult(value);
}
});
@ -118,6 +118,7 @@ final class TestDispatcherServlet extends DispatcherServlet { @@ -118,6 +118,7 @@ final class TestDispatcherServlet extends DispatcherServlet {
}
@Override
@Nullable
protected HandlerExecutionChain getHandler(HttpServletRequest request) throws Exception {
HandlerExecutionChain chain = super.getHandler(request);
if (chain != null) {
@ -138,6 +139,7 @@ final class TestDispatcherServlet extends DispatcherServlet { @@ -138,6 +139,7 @@ final class TestDispatcherServlet extends DispatcherServlet {
}
@Override
@Nullable
protected ModelAndView processHandlerException(HttpServletRequest request, HttpServletResponse response,
@Nullable Object handler, Exception ex) throws Exception {

1
spring-test/src/main/java/org/springframework/test/web/servlet/htmlunit/HtmlUnitRequestBuilder.java

@ -451,6 +451,7 @@ final class HtmlUnitRequestBuilder implements RequestBuilder, Mergeable { @@ -451,6 +451,7 @@ final class HtmlUnitRequestBuilder implements RequestBuilder, Mergeable {
}
@Override
@Nullable
public HttpSession getSession(boolean create) {
HttpSession session = super.getSession(false);
if (session == null && create) {

5
spring-test/src/main/java/org/springframework/test/web/servlet/setup/StubWebApplicationContext.java

@ -130,6 +130,7 @@ class StubWebApplicationContext implements WebApplicationContext { @@ -130,6 +130,7 @@ class StubWebApplicationContext implements WebApplicationContext {
}
@Override
@Nullable
public ApplicationContext getParent() {
return null;
}
@ -218,11 +219,13 @@ class StubWebApplicationContext implements WebApplicationContext { @@ -218,11 +219,13 @@ class StubWebApplicationContext implements WebApplicationContext {
}
@Override
@Nullable
public Class<?> getType(String name) throws NoSuchBeanDefinitionException {
return this.beanFactory.getType(name);
}
@Override
@Nullable
public Class<?> getType(String name, boolean allowFactoryBeanInit) throws NoSuchBeanDefinitionException {
return this.beanFactory.getType(name, allowFactoryBeanInit);
}
@ -337,6 +340,7 @@ class StubWebApplicationContext implements WebApplicationContext { @@ -337,6 +340,7 @@ class StubWebApplicationContext implements WebApplicationContext {
//---------------------------------------------------------------------
@Override
@Nullable
public BeanFactory getParentBeanFactory() {
return null;
}
@ -352,6 +356,7 @@ class StubWebApplicationContext implements WebApplicationContext { @@ -352,6 +356,7 @@ class StubWebApplicationContext implements WebApplicationContext {
//---------------------------------------------------------------------
@Override
@Nullable
public String getMessage(String code, @Nullable Object[] args, @Nullable String defaultMessage, Locale locale) {
return this.messageSource.getMessage(code, args, defaultMessage, locale);
}

5
spring-test/src/test/java/org/springframework/test/context/failures/TrackingApplicationContextFailureProcessor.java

@ -21,6 +21,7 @@ import java.util.Collections; @@ -21,6 +21,7 @@ import java.util.Collections;
import java.util.List;
import org.springframework.context.ApplicationContext;
import org.springframework.lang.Nullable;
import org.springframework.test.context.ApplicationContextFailureProcessor;
/**
@ -37,10 +38,10 @@ public class TrackingApplicationContextFailureProcessor implements ApplicationCo @@ -37,10 +38,10 @@ public class TrackingApplicationContextFailureProcessor implements ApplicationCo
@Override
public void processLoadFailure(ApplicationContext context, Throwable exception) {
public void processLoadFailure(ApplicationContext context, @Nullable Throwable exception) {
loadFailures.add(new LoadFailure(context, exception));
}
public record LoadFailure(ApplicationContext context, Throwable exception) {}
public record LoadFailure(ApplicationContext context, @Nullable Throwable exception) {}
}

Loading…
Cancel
Save