Как правильно создать тест с использованием Mockito

У меня есть метод который нужно протестировать и создать заглушку для внешней зависимости в тесте. Я только начинаю знакомится с Mockito и возникают трудности с реализацией.

Вот мой клас с методом.

public class SomeClass {

private AnotherClass another;

public SomeClass(AnotherClass another) {
    this.another = another;
}


public String reverse(String string) {
    StringJoiner stringJoiner = new StringJoiner("");
    for (String word : string.split("(?= )")) {
        stringJoiner.add(another.reverse(word));
    }
    return  stringJoiner.toString();
}

}

Вот что я пытаюсь сделать:

class SomeClassTest {

private AnotherClass anotherMock = mock(AnotherClass.class);

private SomeClass someClass;

@Test
void reverse_shouldDoSomething() {
    when(anotherMock.reverse("abc")).thenReturn("cba");
    when(anotherMock.reverse(" ")).thenReturn(" ");
    someClass = new SomeClass(anotherMock);
    String actual = someClass.reverse("abc    ");
    String expected = "cba    ";
    assertEquals(expected, actual);
}

Видимо эта реализация неверная. Может кто-то знает как правильно сделать тест, подскажите, пожалуйста.


Ответы (0 шт):