Search in sources :

Example 6 with Status

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.Status in project cloudbreak by hortonworks.

the class UpgradeCcmOnFreeIpaHandlerTest method testFreeIpaMissingAvailabilityStatus.

@ParameterizedTest
@EnumSource(Status.class)
void testFreeIpaMissingAvailabilityStatus(Status status) {
    DescribeFreeIpaResponse freeipa = new DescribeFreeIpaResponse();
    freeipa.setStatus(status);
    freeipa.setAvailabilityStatus(null);
    Optional<DescribeFreeIpaResponse> freeipaOpt = Optional.of(freeipa);
    when(freeIpaService.describe(any())).thenReturn(freeipaOpt);
    underTest.accept(mockEnvironmentDtoEvent);
    verify(freeIpaPollerService, never()).waitForCcmUpgrade(any(), any());
    UpgradeCcmFailedEvent capturedUpgradeCcmEvent = (UpgradeCcmFailedEvent) baseNamedFlowEvent.getValue();
    assertThat(capturedUpgradeCcmEvent.getResourceName()).isEqualTo(TEST_ENV_NAME);
    assertThat(capturedUpgradeCcmEvent.getResourceId()).isEqualTo(TEST_ENV_ID);
    assertThat(capturedUpgradeCcmEvent.getResourceCrn()).isEqualTo(TEST_ENV_CRN);
    assertThat(capturedUpgradeCcmEvent.selector()).isEqualTo("FAILED_UPGRADE_CCM_EVENT");
    assertThat(capturedUpgradeCcmEvent.getEnvironmentStatus()).isEqualTo(UPGRADE_CCM_ON_FREEIPA_FAILED);
}
Also used : DescribeFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.describe.DescribeFreeIpaResponse) UpgradeCcmFailedEvent(com.sequenceiq.environment.environment.flow.upgrade.ccm.event.UpgradeCcmFailedEvent) EnumSource(org.junit.jupiter.params.provider.EnumSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Example 7 with Status

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.Status in project cloudbreak by hortonworks.

the class FreeIpaPollerProviderTest method testStopPoller.

@ParameterizedTest
@MethodSource("freeIpaStopStatuses")
void testStopPoller(Status s1Status, AttemptState attemptState, String message) throws Exception {
    DescribeFreeIpaResponse stack1 = getDescribeFreeIpaResponse(s1Status, CRN);
    when(freeIpaService.describe(CRN)).thenReturn(Optional.ofNullable(stack1));
    AttemptResult<Void> result = underTest.stopPoller(ENV_ID, CRN).process();
    Assertions.assertEquals(attemptState, result.getState());
    Assertions.assertEquals(message, result.getMessage());
}
Also used : DescribeFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.describe.DescribeFreeIpaResponse) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) MethodSource(org.junit.jupiter.params.provider.MethodSource)

Example 8 with Status

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.Status in project cloudbreak by hortonworks.

the class FreeIpaPollerProviderTest method testUpgradeCcmPoller.

@ParameterizedTest
@MethodSource("upgradeCcmStatuses")
void testUpgradeCcmPoller(OperationState operationState, AttemptState attemptState, String message) {
    OperationStatus status = new OperationStatus("123", OperationType.UPGRADE_CCM, operationState, null, null, null, 0, null);
    when(freeIpaService.getOperationStatus("123")).thenReturn(status);
    AttemptResult<Void> result = underTest.upgradeCcmPoller(ENV_ID, CRN, "123");
    Assertions.assertEquals(attemptState, result.getState());
    Assertions.assertEquals(message, result.getMessage());
}
Also used : OperationStatus(com.sequenceiq.freeipa.api.v1.operation.model.OperationStatus) SyncOperationStatus(com.sequenceiq.freeipa.api.v1.freeipa.user.model.SyncOperationStatus) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest) MethodSource(org.junit.jupiter.params.provider.MethodSource)

Example 9 with Status

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.Status in project cloudbreak by hortonworks.

the class FreeIpaPollerProviderTest method getDescribeFreeIpaResponse.

private DescribeFreeIpaResponse getDescribeFreeIpaResponse(Status status, String name) {
    DescribeFreeIpaResponse stack1 = new DescribeFreeIpaResponse();
    stack1.setStatus(status);
    stack1.setName(name);
    stack1.setCrn(name);
    stack1.setStatusReason("reason");
    return stack1;
}
Also used : DescribeFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.describe.DescribeFreeIpaResponse)

Example 10 with Status

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.Status in project cloudbreak by hortonworks.

the class FreeipaServiceTest method testCheckFreeipaRunningWhenFreeIpaUnknownThenThrowsException.

@ParameterizedTest
@EnumSource(value = Status.class)
void testCheckFreeipaRunningWhenFreeIpaUnknownThenThrowsException(Status status) {
    DescribeFreeIpaResponse freeipa = new DescribeFreeIpaResponse();
    freeipa.setStatus(status);
    freeipa.setAvailabilityStatus(AvailabilityStatus.UNKNOWN);
    when(freeipaClientService.getByEnvironmentCrn(ENV_CRN)).thenReturn(freeipa);
    CloudbreakServiceException exception = Assertions.assertThrows(CloudbreakServiceException.class, () -> underTest.checkFreeipaRunning(ENV_CRN));
    assertEquals("Freeipa availability cannot be determined currently.", exception.getMessage());
}
Also used : DescribeFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.describe.DescribeFreeIpaResponse) CloudbreakServiceException(com.sequenceiq.cloudbreak.common.exception.CloudbreakServiceException) EnumSource(org.junit.jupiter.params.provider.EnumSource) ParameterizedTest(org.junit.jupiter.params.ParameterizedTest)

Aggregations

Test (org.junit.jupiter.api.Test)30 SyncOperationStatus (com.sequenceiq.freeipa.api.v1.freeipa.user.model.SyncOperationStatus)23 Stack (com.sequenceiq.freeipa.entity.Stack)16 DetailedStackStatus (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.DetailedStackStatus)14 DescribeFreeIpaResponse (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.describe.DescribeFreeIpaResponse)14 Operation (com.sequenceiq.freeipa.entity.Operation)14 OperationToSyncOperationStatus (com.sequenceiq.freeipa.converter.freeipa.user.OperationToSyncOperationStatus)12 StackStatus (com.sequenceiq.freeipa.entity.StackStatus)11 InstanceStatus (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.instance.InstanceStatus)10 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)10 UserSyncRequestFilter (com.sequenceiq.freeipa.service.freeipa.user.UserSyncRequestFilter)8 OperationStatus (com.sequenceiq.freeipa.api.v1.operation.model.OperationStatus)7 ArrayList (java.util.ArrayList)7 List (java.util.List)7 Map (java.util.Map)7 EnumSource (org.junit.jupiter.params.provider.EnumSource)7 Status (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.common.Status)6 SynchronizeAllUsersRequest (com.sequenceiq.freeipa.api.v1.freeipa.user.model.SynchronizeAllUsersRequest)6 InstanceMetaData (com.sequenceiq.freeipa.entity.InstanceMetaData)6 FailureDetails (com.sequenceiq.freeipa.api.v1.freeipa.user.model.FailureDetails)5