DEV Community

eidher
eidher

Posted on

3

Testing with Mockito

1) Register MockitoExtension

@ExtendWith(MockitoExtension.class)
class ObjectTest {
    static final Long ID = 1L;
Enter fullscreen mode Exit fullscreen mode

2) Create the mock

    @Mock
    private ObjectRepo mockRepo;
Enter fullscreen mode Exit fullscreen mode

3) Inject the mock

    @InjectMocks
    private ObjectService objectService;

    @Test
    void whenfindByIdThenReturnResult() {
        var objectDAO = new ObjectDAO();
        objectDAO.setId(ID);
Enter fullscreen mode Exit fullscreen mode

4) Define the behavior

        when(mockRepo.findById(any(Long.class))).thenReturn(Optional.of(objectDAO));
Enter fullscreen mode Exit fullscreen mode

5) Test

        var result = ObjectService.findById(ID);
Enter fullscreen mode Exit fullscreen mode

6) Verify

        verify(mockRepo, times(1)).findById(any(Long.class));
Enter fullscreen mode Exit fullscreen mode

7) Validate

        assertAll(
                () -> assertNotNull(result),
                () -> assertEquals(objectDAO.getId(), result.getId())
        );
    }
}
Enter fullscreen mode Exit fullscreen mode

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more