Search in sources :

Example 1 with SiteId

use of io.imunity.furms.domain.sites.SiteId in project furms by unity-idm.

the class PolicyNotificationServiceTest method shouldNotifyAllInstalledUsersAndAttachedUsersInUnityGroupAboutSiteServicePolicyChange.

@Test
void shouldNotifyAllInstalledUsersAndAttachedUsersInUnityGroupAboutSiteServicePolicyChange() {
    // given
    final FenixUserId fenixUserId = new FenixUserId("fenixUserId");
    final SiteId siteId = new SiteId(UUID.randomUUID().toString());
    final PolicyDocument policyDocument = PolicyDocument.builder().id(new PolicyId(UUID.randomUUID())).revision(1).name("name").siteId(siteId.id).contentType(PolicyContentType.EMBEDDED).wysiwygText("wysiwygText").build();
    final InfraService infraService = InfraService.builder().policyId(policyDocument.id).siteId(siteId.id).build();
    when(policyDocumentRepository.findById(infraService.policyId)).thenReturn(Optional.of(policyDocument));
    when(userOperationRepository.findAllUserAdditionsBySiteId(siteId.id)).thenReturn(Set.of(UserAddition.builder().userId(fenixUserId.id).build()));
    when(policyDocumentDAO.getPolicyAcceptances(fenixUserId)).thenReturn(Set.of(PolicyAcceptance.builder().policyDocumentId(policyDocument.id).policyDocumentRevision(0).build()));
    // when
    policyNotificationService.notifyAllUsersAboutPolicyAssignmentChange(infraService);
    verify(emailNotificationSender).notifySiteUserAboutPolicyAssignmentChange(fenixUserId, "name");
}
Also used : SiteId(io.imunity.furms.domain.sites.SiteId) InfraService(io.imunity.furms.domain.services.InfraService) FenixUserId(io.imunity.furms.domain.users.FenixUserId) PolicyDocument(io.imunity.furms.domain.policy_documents.PolicyDocument) PolicyId(io.imunity.furms.domain.policy_documents.PolicyId) Test(org.junit.jupiter.api.Test)

Example 2 with SiteId

use of io.imunity.furms.domain.sites.SiteId in project furms by unity-idm.

the class SiteAgentConnectionServiceImplTest method shouldNotDeleteWhenSiteIdAndSiteExternalIdAreNotRelated.

@Test
void shouldNotDeleteWhenSiteIdAndSiteExternalIdAreNotRelated() {
    SiteId id = new SiteId("id");
    SiteExternalId externalId = new SiteExternalId("externalId");
    CorrelationId correlationId = CorrelationId.randomID();
    String json = "json";
    SiteAgentPendingMessage message = SiteAgentPendingMessage.builder().siteExternalId(new SiteExternalId("externalId1")).jsonContent(json).build();
    when(repository.find(correlationId)).thenReturn(Optional.of(message));
    when(siteRepository.findById(id.id)).thenReturn(Optional.of(Site.builder().externalId(externalId).build()));
    assertThrows(IllegalArgumentException.class, () -> service.delete(id, correlationId));
    verify(siteAgentPendingMessageRemoverConnector, times(0)).remove(correlationId, json);
    verify(repository, times(0)).delete(correlationId);
}
Also used : SiteId(io.imunity.furms.domain.sites.SiteId) SiteAgentPendingMessage(io.imunity.furms.domain.site_agent_pending_messages.SiteAgentPendingMessage) CorrelationId(io.imunity.furms.domain.site_agent.CorrelationId) SiteExternalId(io.imunity.furms.domain.sites.SiteExternalId) Test(org.junit.jupiter.api.Test)

Example 3 with SiteId

use of io.imunity.furms.domain.sites.SiteId in project furms by unity-idm.

the class SiteAgentConnectionServiceImplTest method shouldNotRetryWhenSiteIdAndSiteExternalIdAreNotRelated.

@Test
void shouldNotRetryWhenSiteIdAndSiteExternalIdAreNotRelated() {
    SiteId id = new SiteId("id");
    SiteExternalId externalId = new SiteExternalId("externalId");
    CorrelationId correlationId = CorrelationId.randomID();
    String json = "json";
    SiteAgentPendingMessage message = SiteAgentPendingMessage.builder().siteExternalId(new SiteExternalId("externalId1")).jsonContent(json).build();
    when(repository.find(correlationId)).thenReturn(Optional.of(message));
    when(siteRepository.findById(id.id)).thenReturn(Optional.of(Site.builder().externalId(externalId).build()));
    assertThrows(IllegalArgumentException.class, () -> service.retry(id, correlationId));
    verify(siteAgentRetryService, times(0)).retry(externalId, json);
    verify(repository, times(0)).overwriteSentTime(correlationId, ZonedDateTime.now(clock).toLocalDateTime());
}
Also used : SiteId(io.imunity.furms.domain.sites.SiteId) SiteAgentPendingMessage(io.imunity.furms.domain.site_agent_pending_messages.SiteAgentPendingMessage) CorrelationId(io.imunity.furms.domain.site_agent.CorrelationId) SiteExternalId(io.imunity.furms.domain.sites.SiteExternalId) Test(org.junit.jupiter.api.Test)

Example 4 with SiteId

use of io.imunity.furms.domain.sites.SiteId in project furms by unity-idm.

the class SiteAgentConnectionServiceImplTest method shouldGetSiteAgentStatus.

@Test
void shouldGetSiteAgentStatus() {
    SiteId id = new SiteId("id");
    SiteExternalId externalId = new SiteExternalId("externalId");
    when(siteRepository.findByIdExternalId(id.id)).thenReturn(externalId);
    service.getSiteAgentStatus(id);
    verify(siteAgentStatusService).getStatus(externalId);
}
Also used : SiteId(io.imunity.furms.domain.sites.SiteId) SiteExternalId(io.imunity.furms.domain.sites.SiteExternalId) Test(org.junit.jupiter.api.Test)

Example 5 with SiteId

use of io.imunity.furms.domain.sites.SiteId in project furms by unity-idm.

the class ProjectAndUserRemoveListenerTest method shouldProcessUserAfterRemoveProject.

@Test
public void shouldProcessUserAfterRemoveProject() {
    UUID projectUUID = UUID.randomUUID();
    SSHKey key = SSHKey.builder().id("id").name("key").value("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDvFdnmjLkBdvUqojB/fWMGol4PyhUHgRCn6/Hiaz/pnedck" + "Spgh+RvDor7UsU8bkOQBYc0Yr1ETL1wUR1vIFxqTm23JmmJsyO5EJgUw92nVIc0gj1u5q6xRKg3ONnxEXhJD/78OSp/Z" + "Y8dJw4fnEYl22LfvGXIuCZbvtKNv1Az19y9LU57kDBi3B2ZBDn6rjI6sTeO2jDzb0m0HR1jbLzBO43sxqnVHC7yf9DM7Tp" + "bbgd1Q2km5eySfit/5E3EJBYY4PvankHzGts1NCblK8rX6w+MlV5L1pVZkstVF6hn9gMSM0fInvpJobhQ5KzcL8sJTKO5AL" + "mb9xUkdFjZk9bL demo@demo.pl").ownerId(new PersistentId("id")).sites(Sets.newHashSet("s1", "s2")).build();
    when(userOperationRepository.findAllUserAdditions(new FenixUserId("id"))).thenReturn(Sets.newHashSet(UserAddition.builder().projectId(UUID.randomUUID().toString()).siteId(new SiteId("s1", "id")).build()));
    when(repository.findAllByOwnerId(new PersistentId("id"))).thenReturn(Sets.newHashSet(key));
    listener.onProjectRemove(new ProjectRemovedEvent(Collections.singletonList(FURMSUser.builder().email("demo@test.com").fenixUserId(new FenixUserId("id")).id(new PersistentId("id")).build()), Project.builder().build()));
    verify(sshKeyFromSiteRemover).removeKeyFromSites(key, Sets.newHashSet("s2"), new FenixUserId("id"));
    verify(sshKeyHistoryRepository).deleteLatest("s2", "id");
    verify(repository).update(SSHKey.builder().id("id").name("key").value("ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDvFdnmjLkBdvUqojB/fWMGol4PyhUHgRCn6/Hiaz/pnedck" + "Spgh+RvDor7UsU8bkOQBYc0Yr1ETL1wUR1vIFxqTm23JmmJsyO5EJgUw92nVIc0gj1u5q6xRKg3ONnxEXhJD/78OSp/Z" + "Y8dJw4fnEYl22LfvGXIuCZbvtKNv1Az19y9LU57kDBi3B2ZBDn6rjI6sTeO2jDzb0m0HR1jbLzBO43sxqnVHC7yf9DM7Tp" + "bbgd1Q2km5eySfit/5E3EJBYY4PvankHzGts1NCblK8rX6w+MlV5L1pVZkstVF6hn9gMSM0fInvpJobhQ5KzcL8sJTKO5AL" + "mb9xUkdFjZk9bL demo@demo.pl").ownerId(new PersistentId("id")).sites(Sets.newHashSet("s1")).build());
}
Also used : ProjectRemovedEvent(io.imunity.furms.domain.projects.ProjectRemovedEvent) SSHKey(io.imunity.furms.domain.ssh_keys.SSHKey) SiteId(io.imunity.furms.domain.sites.SiteId) FenixUserId(io.imunity.furms.domain.users.FenixUserId) UUID(java.util.UUID) PersistentId(io.imunity.furms.domain.users.PersistentId) Test(org.junit.jupiter.api.Test)

Aggregations

SiteId (io.imunity.furms.domain.sites.SiteId)73 Test (org.junit.jupiter.api.Test)51 FenixUserId (io.imunity.furms.domain.users.FenixUserId)47 SiteExternalId (io.imunity.furms.domain.sites.SiteExternalId)29 CorrelationId (io.imunity.furms.domain.site_agent.CorrelationId)28 GrantAccess (io.imunity.furms.domain.resource_access.GrantAccess)24 Site (io.imunity.furms.domain.sites.Site)17 PolicyId (io.imunity.furms.domain.policy_documents.PolicyId)15 UserAddition (io.imunity.furms.domain.user_operation.UserAddition)15 UUID (java.util.UUID)15 PersistentId (io.imunity.furms.domain.users.PersistentId)14 PolicyDocument (io.imunity.furms.domain.policy_documents.PolicyDocument)13 FURMSUser (io.imunity.furms.domain.users.FURMSUser)13 Set (java.util.Set)13 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)13 TransactionSynchronization (org.springframework.transaction.support.TransactionSynchronization)12 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)10 SiteRepository (io.imunity.furms.spi.sites.SiteRepository)8 Optional (java.util.Optional)8 PolicyAcceptance (io.imunity.furms.domain.policy_documents.PolicyAcceptance)7