38 lines
1.3 KiB
Java
38 lines
1.3 KiB
Java
package com.baeldung.reactive.controller;
|
|
|
|
import org.junit.Test;
|
|
import org.junit.runner.RunWith;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.boot.test.context.SpringBootTest;
|
|
import org.springframework.test.context.junit4.SpringRunner;
|
|
import org.springframework.test.web.reactive.server.EntityExchangeResult;
|
|
import org.springframework.test.web.reactive.server.WebTestClient;
|
|
|
|
import static org.junit.Assert.assertEquals;
|
|
|
|
@RunWith(SpringRunner.class)
|
|
@SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
|
|
public class UserControllerTest {
|
|
|
|
@Autowired
|
|
private WebTestClient webTestClient;
|
|
|
|
@Test
|
|
public void whenUserNameIsBaeldung_thenWebFilterIsApplied() {
|
|
EntityExchangeResult<String> result = webTestClient.get().uri("/users/baeldung")
|
|
.exchange()
|
|
.expectStatus().isOk()
|
|
.expectBody(String.class)
|
|
.returnResult();
|
|
|
|
assertEquals(result.getResponseBody(), "baeldung");
|
|
assertEquals(result.getResponseHeaders().getFirst("web-filter"), "web-filter-test");
|
|
}
|
|
|
|
@Test
|
|
public void whenUserNameIsTest_thenHandlerFilterFunctionIsNotApplied() {
|
|
webTestClient.get().uri("/users/test")
|
|
.exchange()
|
|
.expectStatus().isOk();
|
|
}
|
|
} |