Search in sources :

Example 6 with MultipartBodyBuilder

use of org.springframework.http.client.MultipartBodyBuilder in project spring-framework by spring-projects.

the class RequestPartMethodArgumentResolverTests method monoPersonNotRequired.

// gh-23060
@Test
void monoPersonNotRequired() {
    MethodParameter param = this.testMethod.annot(requestPart().notRequired()).arg(Mono.class, Person.class);
    MultipartBodyBuilder bodyBuilder = new MultipartBodyBuilder();
    Mono<Person> actual = resolveArgument(param, bodyBuilder);
    assertThat(actual.block()).isNull();
}
Also used : MultipartBodyBuilder(org.springframework.http.client.MultipartBodyBuilder) MethodParameter(org.springframework.core.MethodParameter) Test(org.junit.jupiter.api.Test)

Example 7 with MultipartBodyBuilder

use of org.springframework.http.client.MultipartBodyBuilder in project spring-framework by spring-projects.

the class RequestPartMethodArgumentResolverTests method listPersonNotRequired.

// gh-23060
@Test
void listPersonNotRequired() {
    MethodParameter param = this.testMethod.annot(requestPart().notRequired()).arg(List.class, Person.class);
    MultipartBodyBuilder bodyBuilder = new MultipartBodyBuilder();
    List<Person> actual = resolveArgument(param, bodyBuilder);
    assertThat(actual).isEmpty();
}
Also used : MultipartBodyBuilder(org.springframework.http.client.MultipartBodyBuilder) MethodParameter(org.springframework.core.MethodParameter) Test(org.junit.jupiter.api.Test)

Example 8 with MultipartBodyBuilder

use of org.springframework.http.client.MultipartBodyBuilder in project spring-framework by spring-projects.

the class RequestPartMethodArgumentResolverTests method monoPartNotRequired.

// gh-23060
@Test
void monoPartNotRequired() {
    MethodParameter param = this.testMethod.annot(requestPart().notRequired()).arg(Mono.class, Part.class);
    MultipartBodyBuilder bodyBuilder = new MultipartBodyBuilder();
    Mono<Part> actual = resolveArgument(param, bodyBuilder);
    assertThat(actual.block()).isNull();
}
Also used : MultipartBodyBuilder(org.springframework.http.client.MultipartBodyBuilder) RequestPart(org.springframework.web.bind.annotation.RequestPart) Part(org.springframework.http.codec.multipart.Part) MvcAnnotationPredicates.requestPart(org.springframework.web.testfixture.method.MvcAnnotationPredicates.requestPart) MethodParameter(org.springframework.core.MethodParameter) Test(org.junit.jupiter.api.Test)

Example 9 with MultipartBodyBuilder

use of org.springframework.http.client.MultipartBodyBuilder in project spring-framework by spring-projects.

the class RequestPartMethodArgumentResolverTests method monoPerson.

@Test
void monoPerson() {
    MethodParameter param = this.testMethod.annot(requestPart()).arg(Mono.class, Person.class);
    MultipartBodyBuilder bodyBuilder = new MultipartBodyBuilder();
    bodyBuilder.part("name", new Person("Jones"));
    Mono<Person> actual = resolveArgument(param, bodyBuilder);
    assertThat(actual.block().getName()).isEqualTo("Jones");
}
Also used : MultipartBodyBuilder(org.springframework.http.client.MultipartBodyBuilder) MethodParameter(org.springframework.core.MethodParameter) Test(org.junit.jupiter.api.Test)

Example 10 with MultipartBodyBuilder

use of org.springframework.http.client.MultipartBodyBuilder in project spring-framework by spring-projects.

the class RequestPartMethodArgumentResolverTests method monoPart.

@Test
void monoPart() {
    MethodParameter param = this.testMethod.annot(requestPart()).arg(Mono.class, Part.class);
    MultipartBodyBuilder bodyBuilder = new MultipartBodyBuilder();
    bodyBuilder.part("name", new Person("Jones"));
    Mono<Part> actual = resolveArgument(param, bodyBuilder);
    Part part = actual.block();
    assertThat(partToUtf8String(part)).isEqualTo("{\"name\":\"Jones\"}");
}
Also used : MultipartBodyBuilder(org.springframework.http.client.MultipartBodyBuilder) RequestPart(org.springframework.web.bind.annotation.RequestPart) Part(org.springframework.http.codec.multipart.Part) MvcAnnotationPredicates.requestPart(org.springframework.web.testfixture.method.MvcAnnotationPredicates.requestPart) MethodParameter(org.springframework.core.MethodParameter) Test(org.junit.jupiter.api.Test)

Aggregations

MultipartBodyBuilder (org.springframework.http.client.MultipartBodyBuilder)36 Test (org.junit.jupiter.api.Test)34 MethodParameter (org.springframework.core.MethodParameter)18 Part (org.springframework.http.codec.multipart.Part)7 RequestPart (org.springframework.web.bind.annotation.RequestPart)7 MvcAnnotationPredicates.requestPart (org.springframework.web.testfixture.method.MvcAnnotationPredicates.requestPart)7 ClassPathResource (org.springframework.core.io.ClassPathResource)4 MultiValueMap (org.springframework.util.MultiValueMap)4 BindingContext (org.springframework.web.reactive.BindingContext)4 ServerWebExchange (org.springframework.web.server.ServerWebExchange)4 MockServerWebExchange (org.springframework.web.testfixture.server.MockServerWebExchange)4 Resource (org.springframework.core.io.Resource)3 DataBuffer (org.springframework.core.io.buffer.DataBuffer)3 ServerWebInputException (org.springframework.web.server.ServerWebInputException)2 HttpEntity (org.springframework.http.HttpEntity)1 HttpHeaders (org.springframework.http.HttpHeaders)1 MediaType (org.springframework.http.MediaType)1 MultipartHttpMessageReader (org.springframework.http.codec.multipart.MultipartHttpMessageReader)1 MultipartHttpMessageWriter (org.springframework.http.codec.multipart.MultipartHttpMessageWriter)1 WebTestClient (org.springframework.test.web.reactive.server.WebTestClient)1