@Test
public void whenGetByIdWithNotExistingIdItShouldThrowEntityNotFoundExceptionWithDescriptiveMessage() {

    when(gateway.findById(TEST_ID)).thenReturn(null);
    try {
        TestEntity actual = service.getById(TEST_ID);
        failBecauseExceptionWasNotThrown(EntityNotFoundException.class);
    } catch (Exception e) {
        assertThat(e).isInstanceOf(EntityNotFoundException.class);
        assertThat(e)
                .hasMessageContaining(TestEntity.class.getSimpleName())
                .hasMessageContaining("not found");
    }
}