@Test
public void addProjectionInterfaceAddsProjectionAsDefaultWithSimpleClassNameWhenMarkedAsDefaultAndNameNotSet() throws MultipleDefaultProjectionsException, MultipleSimilarlyNamedProjectionsException {

    // given
    var expectedTarget = (Class) Integer.class;
    var expectedName = annotatedClass.getSimpleName().toLowerCase();
    given(namedProjectionAnnotationMock.target()).willReturn(expectedTarget);
    given(namedProjectionAnnotationMock.name()).willReturn("");
    given(namedProjectionAnnotationMock.defaultProjection()).willReturn(true);
    // when
    projectionService.addProjectionInterface(namedProjectionAnnotationMock, annotatedClass);
    // then
    var softly = new SoftAssertions();
    softly.assertThat(projectionService.projectionClassMap)
            .containsOnly(entry(Pair.of(expectedName, expectedTarget), (Class<?>) annotatedClass));
    softly.assertThat(projectionService.defaultProjectionClassMap)
            .containsExactly(entry((Class<?>) expectedTarget, (Class<?>) annotatedClass));
    softly.assertAll();
}