4 import org.junit.jupiter.api.DisplayName;
5 import org.junit.jupiter.api.Test;
6 import org.junit.jupiter.api.extension.ExtendWith;
7 import static org.mockito.Mockito.verify;
8 import static org.mockito.Mockito.when;
9 import org.springframework.beans.factory.annotation.Autowired;
10 import org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTest;
11 import org.springframework.boot.test.mock.mockito.MockBean;
12 import org.springframework.http.MediaType;
13 import org.springframework.test.context.junit.jupiter.SpringExtension;
14 import org.springframework.test.web.reactive.server.WebTestClient;
15 import reactor.core.publisher.Mono;
19 * Narrow Integration-Test for the {@link RestController}.
22 @ExtendWith(SpringExtension.class)
24 public class RestControllerIT
27 WebTestClient webClient;
29 RemoteContentService service;
33 @DisplayName("Valid mapping for RestController: /?path=foo")
34 void testUriWithParameter()
36 when(service.getRemoteText("foo")).thenReturn(Mono.just("bar"));
40 .header("Accept", MediaType.TEXT_PLAIN_VALUE)
42 .expectStatus().isOk()
43 .expectBody(String.class).isEqualTo("bar");
44 verify(service).getRemoteText("foo");