Search in sources :

Example 11 with HealthDetailsFreeIpaResponse

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

the class FreeIpaStackHealthDetailsServiceTest method testTwoGoodNodes.

@Test
public void testTwoGoodNodes() throws Exception {
    InstanceMetaData im1 = getInstance1();
    InstanceMetaData im2 = getInstance2();
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im1))).thenReturn(getGoodDetails1());
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im2))).thenReturn(getGoodDetails2());
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.AVAILABLE, 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 12 with HealthDetailsFreeIpaResponse

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

the class FreeIpaStackHealthDetailsServiceTest method testUnresponsiveSingleNode.

@Test
public void testUnresponsiveSingleNode() throws Exception {
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStack());
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), any())).thenThrow(ipaClientException);
    HealthDetailsFreeIpaResponse response = underTest.getHealthDetails(ENVIRONMENT_ID, ACCOUNT_ID);
    Assert.assertEquals(Status.UNREACHABLE, response.getStatus());
    Assert.assertTrue(response.getNodeHealthDetails().size() == 1);
    for (NodeHealthDetails nodeHealth : response.getNodeHealthDetails()) {
        Assert.assertTrue(!nodeHealth.getIssues().isEmpty());
        Assert.assertEquals(InstanceStatus.UNREACHABLE, nodeHealth.getStatus());
        Assert.assertTrue(nodeHealth.getIssues().size() == 1);
        Assert.assertTrue(nodeHealth.getIssues().get(0).equals("Error during healthcheck"));
    }
}
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 13 with HealthDetailsFreeIpaResponse

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

the class FreeIpaStackHealthDetailsServiceTest method testUnresponsiveSecondaryNode.

@Test
public void testUnresponsiveSecondaryNode() throws Exception {
    InstanceMetaData im1 = getInstance1();
    InstanceMetaData im2 = getInstance2();
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im1))).thenReturn(getGoodDetails1());
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im2))).thenThrow(ipaClientException);
    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 14 with HealthDetailsFreeIpaResponse

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

the class FreeIpaStackHealthDetailsServiceTest method testOneGoodOneUnhealthyNode.

@Test
public void testOneGoodOneUnhealthyNode() throws Exception {
    InstanceMetaData im1 = getInstance1();
    InstanceMetaData im2 = getInstance2();
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im1))).thenReturn(getGoodDetails1());
    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)

Example 15 with HealthDetailsFreeIpaResponse

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

the class FreeIpaStackHealthDetailsServiceTest method testTwoUnhealthyNodes.

@Test
public void testTwoUnhealthyNodes() throws Exception {
    InstanceMetaData im1 = getInstance1();
    InstanceMetaData im2 = getInstance2();
    Mockito.when(stackService.getByEnvironmentCrnAndAccountIdWithListsAndMdcContext(anyString(), anyString())).thenReturn(getStackTwoInstances(im1, im2));
    Mockito.when(freeIpaInstanceHealthDetailsService.getInstanceHealthDetails(any(), eq(im1))).thenReturn(getUnhealthyDetails1());
    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