use of com.sequenceiq.freeipa.entity.Operation in project cloudbreak by hortonworks.
the class BindUserCreateOperationAcceptorTest method testRejectedAlreadyRunning.
@Test
public void testRejectedAlreadyRunning() {
Operation runningOperation = createCurrentOperation();
runningOperation.setId(0L);
runningOperation.setOperationId("other");
Operation currentOperation = createCurrentOperation();
when(repository.findRunningByAccountIdAndType(ACCOUNT, underTest.selector())).thenReturn(List.of(runningOperation, currentOperation));
AcceptResult result = underTest.accept(currentOperation);
assertFalse(result.isAccepted());
assertEquals("There is already a running bind user creation for cluster", result.getRejectionMessage().get());
}
use of com.sequenceiq.freeipa.entity.Operation in project cloudbreak by hortonworks.
the class BindUserCreateOperationAcceptorTest method testDifferentEnvSameSuffixIsAccepted.
@Test
public void testDifferentEnvSameSuffixIsAccepted() {
Operation runningOperation = createCurrentOperation();
runningOperation.setId(0L);
runningOperation.setOperationId("other");
runningOperation.setEnvironmentList(List.of("otherEnv"));
Operation currentOperation = createCurrentOperation();
when(repository.findRunningByAccountIdAndType(ACCOUNT, underTest.selector())).thenReturn(List.of(runningOperation, currentOperation));
AcceptResult result = underTest.accept(currentOperation);
assertTrue(result.isAccepted());
assertTrue(result.getRejectionMessage().isEmpty());
}
use of com.sequenceiq.freeipa.entity.Operation in project cloudbreak by hortonworks.
the class UpgradeCcmOperationAcceptorTest method createOperation.
private static Operation createOperation(long id, List<String> environmentList) {
Operation operation = new Operation();
operation.setId(id);
operation.setAccountId(ACCOUNT_ID);
operation.setEnvironmentList(environmentList);
return operation;
}
use of com.sequenceiq.freeipa.entity.Operation in project cloudbreak by hortonworks.
the class UserV1ControllerTest method synchronizeAllUsers.
@Test
void synchronizeAllUsers() {
Set<String> environments = Set.of(ENV_CRN);
Set<String> users = Set.of(USER_CRN);
Set<String> machineUsers = Set.of(MACHINE_USER_CRN);
SynchronizeAllUsersRequest request = new SynchronizeAllUsersRequest();
request.setEnvironments(environments);
request.setUsers(users);
request.setMachineUsers(machineUsers);
request.setWorkloadCredentialsUpdateType(WorkloadCredentialsUpdateType.FORCE_UPDATE);
Operation operation = mock(Operation.class);
when(userSyncService.synchronizeUsersWithCustomPermissionCheck(any(), any(), any(), any(), any(), any())).thenReturn(operation);
SyncOperationStatus status = mock(SyncOperationStatus.class);
when(operationToSyncOperationStatus.convert(operation)).thenReturn(status);
assertEquals(status, ThreadBasedUserCrnProvider.doAs(USER_CRN, () -> underTest.synchronizeAllUsers(request)));
UserSyncRequestFilter userSyncFilter = new UserSyncRequestFilter(users, machineUsers, Optional.empty());
verify(userSyncService, times(1)).synchronizeUsersWithCustomPermissionCheck(ACCOUNT_ID, USER_CRN, environments, userSyncFilter, WorkloadCredentialsUpdateType.FORCE_UPDATE, AuthorizationResourceAction.DESCRIBE_ENVIRONMENT);
}
use of com.sequenceiq.freeipa.entity.Operation in project cloudbreak by hortonworks.
the class UserV1ControllerTest method synchronizeAllUsersAsInternalActor.
@Test
void synchronizeAllUsersAsInternalActor() {
Set<String> environments = Set.of(ENV_CRN);
Set<String> users = Set.of(USER_CRN);
Set<String> machineUsers = Set.of(MACHINE_USER_CRN);
SynchronizeAllUsersRequest request = new SynchronizeAllUsersRequest();
request.setEnvironments(environments);
request.setUsers(users);
request.setMachineUsers(machineUsers);
request.setAccountId(ACCOUNT_ID);
Operation operation = mock(Operation.class);
when(userSyncService.synchronizeUsersWithCustomPermissionCheck(any(), any(), any(), any(), any(), any())).thenReturn(operation);
SyncOperationStatus status = mock(SyncOperationStatus.class);
when(operationToSyncOperationStatus.convert(operation)).thenReturn(status);
assertEquals(status, ThreadBasedUserCrnProvider.doAsInternalActor("crn:altus:iam:us-west-1:altus:user:__internal__actor__", () -> underTest.synchronizeAllUsers(request)));
UserSyncRequestFilter userSyncFilter = new UserSyncRequestFilter(users, machineUsers, Optional.empty());
verify(userSyncService, times(1)).synchronizeUsersWithCustomPermissionCheck(ACCOUNT_ID, "crn:altus:iam:us-west-1:altus:user:__internal__actor__", environments, userSyncFilter, WorkloadCredentialsUpdateType.UPDATE_IF_CHANGED, AuthorizationResourceAction.DESCRIBE_ENVIRONMENT);
}
Aggregations