diff --git a/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java b/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java index 6febc5db8ef3bd793bb116d17d6ac57d88d2efae..36c2770cd5b4334d0adf8908053f0d186ae2eb41 100644 --- a/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java +++ b/src/test/java/de/ozgcloud/admin/organisationseinheit/SyncServiceTest.java @@ -21,6 +21,8 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Spy; +import com.thedeanda.lorem.LoremIpsum; + import de.ozgcloud.admin.keycloak.AddGroupData; import de.ozgcloud.admin.keycloak.AddGroupDataTestFactory; import de.ozgcloud.admin.keycloak.Group; @@ -97,7 +99,7 @@ class SyncServiceTest { @BeforeEach void setUp() { doReturn(syncedOrganisationsEinheitGroup).when(service).syncGroup(group, null, syncTimestamp); - doReturn(savedOrganisationsEinheitGroup).when(service).saveSyncedOrganisationsEinheit(any()); + doReturn(savedOrganisationsEinheitGroup).when(service).saveSyncedOrganisationsEinheit(syncedOrganisationsEinheitGroup); } @Test @@ -108,7 +110,7 @@ class SyncServiceTest { } @Test - void shouldSaveSyncedGroup() { + void shouldSaveSyncedOrganisationsEinheit() { service.syncGroupsWithSubGroups(group, null, syncTimestamp); verify(service).saveSyncedOrganisationsEinheit(syncedOrganisationsEinheitGroup); @@ -130,14 +132,22 @@ class SyncServiceTest { private final OrganisationsEinheit parent = OrganisationsEinheitTestFactory.createBuilder().id(UUID.randomUUID().toString()).build(); private final OrganisationsEinheit pvogOrganisationsEinheit = OrganisationsEinheitTestFactory.createBuilder().zufiId(null).settings(null) .parentId(null).syncResult(null).build(); + private final String syncedName = LoremIpsum.getInstance().getWords(3); + private final SyncResult syncedSyncResult = SyncResult.OK; + private final String syncedZufiId = UUID.randomUUID().toString(); + + @BeforeEach + void setUp() { + } @Nested class ParentGroup { @BeforeEach void setUp() { - doReturn(OrganisationsEinheitTestFactory.NAME).when(service).syncName(anyList(), any()); - doReturn(SyncResult.OK).when(service).evaluateSyncResult(anyList(), any()); + doReturn(syncedName).when(service).syncName(List.of(pvogOrganisationsEinheit), group); + doReturn(syncedSyncResult).when(service).evaluateSyncResult(List.of(pvogOrganisationsEinheit), group); + doReturn(syncedZufiId).when(service).syncZufiId(List.of(pvogOrganisationsEinheit)); when(organisationsEinheitRemoteService.getByOrganisationsEinheitId(GroupTestFactory.ORGANISATIONS_EINHEIT_ID)).thenReturn( List.of(pvogOrganisationsEinheit)); } @@ -151,16 +161,18 @@ class SyncServiceTest { @Test void shouldSyncName() { - service.syncGroup(group, null, syncTimestamp); + var synced = service.syncGroup(group, null, syncTimestamp); verify(service).syncName(List.of(pvogOrganisationsEinheit), group); + assertThat(synced.getName()).isEqualTo(syncedName); } @Test void shouldEvaluateSyncResult() { - service.syncGroup(group, null, syncTimestamp); + var synced = service.syncGroup(group, null, syncTimestamp); verify(service).evaluateSyncResult(List.of(pvogOrganisationsEinheit), group); + assertThat(synced.getSyncResult()).isEqualTo(syncedSyncResult); } @Test @@ -170,11 +182,19 @@ class SyncServiceTest { verify(organisationsEinheitRemoteService).getByOrganisationsEinheitId(GroupTestFactory.ORGANISATIONS_EINHEIT_ID); } + @Test + void shouldSetOrganisationsEinheitId() { + var synced = service.syncGroup(group, null, syncTimestamp); + + assertThat(synced.getOrganisationsEinheitId()).isEqualTo(group.getOrganisationsEinheitId()); + } + @Test void shouldSyncZufiId() { - service.syncGroup(group, null, syncTimestamp); + var synced = service.syncGroup(group, null, syncTimestamp); verify(service).syncZufiId(List.of(pvogOrganisationsEinheit)); + assertThat(synced.getZufiId()).isEqualTo(syncedZufiId); } @Test