модульный тест для метода Map computeIfAbsent - PullRequest
0 голосов
/ 04 января 2019

Как я могу написать метод Junit для Map computeIfAbsent. У меня есть код ниже -

CompletableFuture<Employee>[] employeeDetailFutures =
        empIds.stream().map(empId ->
        employeeCache.computeIfAbsent(empId, k -> employeeService.employeeDetails(Integer.valueOf(empId))))
        .filter(Objects::nonNull)
        .toArray(CompletableFuture[]::new);

Здесь employeeCache - это Map, и я хочу написать Junit для employeeCache.computeIfAbsent(...), пока я пробовал ниже, но каждый раз выглядит так, как будто новая карта создает и получает ноль

Map<String, CompletableFuture<Employee>> mockMap;
@Before
public void setUp() {
    this.mockMap = Mockito.mock(Map.class);
} 

when(mockMap.computeIfAbsent(any(), any()).thenReturn(CompletableFuture.completedFuture(Employee Object);

Каждый раз, когда я получаю нулевое значение для computeIfAbsent. Что мне здесь не хватает.

...