fix(web): map missing multipart parts to bad request

This commit is contained in:
2026-09-05 10:44:13 +08:00
parent 37183ac2f0
commit 6f2b2babc6
2 changed files with 15 additions and 1 deletions
@@ -18,6 +18,7 @@ import org.springframework.http.HttpStatus;
import org.springframework.web.server.ResponseStatusException;
import org.springframework.dao.CannotAcquireLockException;
import org.springframework.web.multipart.MaxUploadSizeExceededException;
import org.springframework.web.multipart.support.MissingServletRequestPartException;
import java.lang.reflect.Method;
@@ -65,6 +66,17 @@ class GlobalExceptionHandlerTest {
assertThat(response.getBody().code()).isEqualTo(ResultCode.BAD_REQUEST.code());
}
@Test
void missingRequiredMultipartPartMapsToBadRequest() {
MockHttpServletRequest request = new MockHttpServletRequest();
var response = handler.handleBadRequest(
new MissingServletRequestPartException("file"), request);
assertThat(response.getStatusCode().value()).isEqualTo(200);
assertThat(response.getBody().code()).isEqualTo(ResultCode.BAD_REQUEST.code());
}
@Test
void validationDetailsAreIncludedInMessageAndData() {
MockHttpServletRequest request = new MockHttpServletRequest();