package com.example.nisum.WebfluxMongodb; import com.example.nisum.WebfluxMongodb.entity.Employee; import com.example.nisum.WebfluxMongodb.repository.EmployeeRepository; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.util.Assert; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; import reactor.test.StepVerifier; @SpringBootTest class WebfluxMongodbApplicationTests { @Autowired EmployeeRepository employeeRepository; @Test public void save() { Mono<Employee> save = employeeRepository.save(new Employee("1", "Ravi", "29", "EV", "HYD")); StepVerifier.create(save).assertNext(e -> Assert.notNull(e, e.getId())).expectComplete().verify(); } @Test public void getAllBy() { Employee save = employeeRepository.save(new Employee("2", "Raju", "30", "DEV", "HYD")).block(); Flux<Employee> findAll = employeeRepository.findAllByDepartment("DEV"); StepVerifier.create(findAll).assertNext(emp -> { Assert.notNull(emp.getName()); Assert.hasLength(emp.getName(), String.valueOf(4)); }).expectNextCount(2).verifyComplete(); } }