WIP:mapping
[demos/testing] / src / test / java / de / juplo / demo / MappingIT.java
1 package de.juplo.demo;
2
3
4 import org.junit.jupiter.api.Test;
5 import org.junit.jupiter.api.extension.ExtendWith;
6 import static org.mockito.ArgumentMatchers.any;
7 import org.springframework.beans.factory.annotation.Autowired;
8 import org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTest;
9 import org.springframework.boot.test.mock.mockito.MockBean;
10 import org.springframework.test.context.junit.jupiter.SpringExtension;
11 import org.springframework.test.web.reactive.server.WebTestClient;
12 import reactor.core.publisher.Mono;
13 import static reactor.core.publisher.Mono.when;
14
15
16 /**
17  * Narrow Integration-Test for the mappings (URL -> controller).
18  * @author Kai Moritz
19  */
20 @ExtendWith(SpringExtension.class)
21 @WebFluxTest()
22 public class MappingIT
23 {
24   @Autowired
25   WebTestClient webClient;
26   @MockBean
27   RemoteContentService service;
28
29
30   @Test
31   void testHtmlController()
32   {
33     when(service.getRemoteText(any(String.class))).thenReturn(Mono.just("bar"));
34     webClient
35         .get()
36         .uri("/?path=foo")
37         .exchange()
38         .expectStatus().isOk();
39   }
40 }