Search in sources :

Example 1 with HealthDetailsFreeIpaResponse

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse in project cloudbreak by hortonworks.

the class FreeIpaStackHealthDetailsServiceTest method testTwoStoppedNodes.

@Test
public void testTwoStoppedNodes() throws Exception {
    InstanceMetaData im1 = getInstance1();
    im1.setInstanceStatus(InstanceStatus.STOPPED);
    InstanceMetaData im2 = getInstance2();
    im2.setInstanceStatus(InstanceStatus.STOPPED);
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.STOPPED, response.getStatus());
    Assert.assertTrue(response.getNodeHealthDetails().size() == 2);
}
Also used : InstanceMetaData(com.sequenceiq.freeipa.entity.InstanceMetaData) HealthDetailsFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse) Test(org.junit.jupiter.api.Test)

Example 2 with HealthDetailsFreeIpaResponse

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse in project cloudbreak by hortonworks.

the class FreeIpaStackHealthDetailsServiceTest method testHealthySingleNode.

@Test
public void testHealthySingleNode() throws Exception {
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStack());
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), any())).thenReturn(getGoodDetails1());
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.AVAILABLE, response.getStatus());
    Assert.assertFalse(response.getNodeHealthDetails().isEmpty());
    for (NodeHealthDetails nodeHealth : response.getNodeHealthDetails()) {
        Assert.assertTrue(nodeHealth.getIssues().isEmpty());
        Assert.assertEquals(InstanceStatus.CREATED, nodeHealth.getStatus());
    }
}
Also used : NodeHealthDetails(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.NodeHealthDetails) HealthDetailsFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse) Test(org.junit.jupiter.api.Test)

Example 3 with HealthDetailsFreeIpaResponse

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse in project cloudbreak by hortonworks.

the class FreeIpaStackHealthDetailsServiceTest method testTwoFailedNodes.

@Test
public void testTwoFailedNodes() throws Exception {
    InstanceMetaData im1 = getInstance1();
    im1.setInstanceStatus(InstanceStatus.FAILED);
    InstanceMetaData im2 = getInstance2();
    im2.setInstanceStatus(InstanceStatus.FAILED);
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.UNHEALTHY, response.getStatus());
    Assert.assertTrue(response.getNodeHealthDetails().size() == 2);
}
Also used : InstanceMetaData(com.sequenceiq.freeipa.entity.InstanceMetaData) HealthDetailsFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse) Test(org.junit.jupiter.api.Test)

Example 4 with HealthDetailsFreeIpaResponse

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse in project cloudbreak by hortonworks.

the class FreeIpaStackHealthDetailsServiceTest method testNodeDeletedOnProvider.

@Test
public void testNodeDeletedOnProvider() throws Exception {
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getDeletedStack());
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.UNHEALTHY, response.getStatus());
    Assert.assertFalse(response.getNodeHealthDetails().isEmpty());
    Assert.assertTrue(response.getNodeHealthDetails().stream().findFirst().get().getStatus() == InstanceStatus.TERMINATED);
}
Also used : HealthDetailsFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse) Test(org.junit.jupiter.api.Test)

Example 5 with HealthDetailsFreeIpaResponse

use of com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse in project cloudbreak by hortonworks.

the class FreeIpaStackHealthDetailsServiceTest method testOneStoppedOneGoodNode.

@Test
public void testOneStoppedOneGoodNode() throws Exception {
    InstanceMetaData im1 = getInstance1();
    im1.setInstanceStatus(InstanceStatus.STOPPED);
    InstanceMetaData im2 = getInstance2();
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im2))).thenReturn(getUnhealthyDetails2());
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.UNHEALTHY, response.getStatus());
    Assert.assertTrue(response.getNodeHealthDetails().size() == 2);
}
Also used : InstanceMetaData(com.sequenceiq.freeipa.entity.InstanceMetaData) HealthDetailsFreeIpaResponse(com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse) Test(org.junit.jupiter.api.Test)

Aggregations

HealthDetailsFreeIpaResponse (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.HealthDetailsFreeIpaResponse)18 Test (org.junit.jupiter.api.Test)13 NodeHealthDetails (com.sequenceiq.freeipa.api.v1.freeipa.stack.model.health.NodeHealthDetails)9 InstanceMetaData (com.sequenceiq.freeipa.entity.InstanceMetaData)9 Stack (com.sequenceiq.freeipa.entity.Stack)2 CloudbreakServiceException (com.sequenceiq.cloudbreak.common.exception.CloudbreakServiceException)1