Search in sources :

Example 6 with SetupStep

use of org.apache.atlas.setup.SetupStep in project incubator-atlas by apache.

the class SetupStepsTest method shouldThrowSetupExceptionAndNotDoSetupIfSetupInProgressNodeExists.

@Test
public void shouldThrowSetupExceptionAndNotDoSetupIfSetupInProgressNodeExists() throws Exception {
    Set<SetupStep> steps = new LinkedHashSet<>();
    SetupStep setupStep1 = mock(SetupStep.class);
    steps.add(setupStep1);
    when(configuration.getString(HAConfiguration.ATLAS_SERVER_HA_ZK_ROOT_KEY, HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT)).thenReturn(HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT);
    setupServerIdSelectionMocks();
    setupSetupInProgressPathMocks(ZooDefs.Ids.OPEN_ACL_UNSAFE, mock(Stat.class));
    InterProcessMutex lock = mock(InterProcessMutex.class);
    when(curatorFactory.lockInstance(HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT)).thenReturn(lock);
    SetupSteps setupSteps = new SetupSteps(steps, curatorFactory, configuration);
    try {
        setupSteps.runSetup();
    } catch (Exception e) {
        assertTrue(e instanceof SetupException);
    }
    verifyZeroInteractions(setupStep1);
}
Also used : LinkedHashSet(java.util.LinkedHashSet) Stat(org.apache.zookeeper.data.Stat) SetupException(org.apache.atlas.setup.SetupException) SetupStep(org.apache.atlas.setup.SetupStep) InterProcessMutex(org.apache.curator.framework.recipes.locks.InterProcessMutex) SetupException(org.apache.atlas.setup.SetupException) Test(org.testng.annotations.Test)

Example 7 with SetupStep

use of org.apache.atlas.setup.SetupStep in project incubator-atlas by apache.

the class SetupStepsTest method shouldDeleteSetupInProgressNodeAfterCompletion.

@Test
public void shouldDeleteSetupInProgressNodeAfterCompletion() throws Exception {
    Set<SetupStep> steps = new LinkedHashSet<>();
    SetupStep setupStep1 = mock(SetupStep.class);
    steps.add(setupStep1);
    when(configuration.getString(HAConfiguration.ATLAS_SERVER_HA_ZK_ROOT_KEY, HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT)).thenReturn(HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT);
    when(configuration.getString(HAConfiguration.HA_ZOOKEEPER_ACL)).thenReturn("digest:user:pwd");
    List<ACL> aclList = Arrays.asList(new ACL(ZooDefs.Perms.ALL, new Id("digest", "user:pwd")));
    setupServerIdSelectionMocks();
    DeleteBuilder deleteBuilder = setupSetupInProgressPathMocks(aclList).getRight();
    InterProcessMutex lock = mock(InterProcessMutex.class);
    when(curatorFactory.lockInstance(HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT)).thenReturn(lock);
    SetupSteps setupSteps = new SetupSteps(steps, curatorFactory, configuration);
    setupSteps.runSetup();
    verify(deleteBuilder).forPath(HAConfiguration.ATLAS_SERVER_ZK_ROOT_DEFAULT + SetupSteps.SETUP_IN_PROGRESS_NODE);
}
Also used : LinkedHashSet(java.util.LinkedHashSet) ACL(org.apache.zookeeper.data.ACL) SetupStep(org.apache.atlas.setup.SetupStep) Id(org.apache.zookeeper.data.Id) DeleteBuilder(org.apache.curator.framework.api.DeleteBuilder) InterProcessMutex(org.apache.curator.framework.recipes.locks.InterProcessMutex) Test(org.testng.annotations.Test)

Aggregations

SetupStep (org.apache.atlas.setup.SetupStep)7 InterProcessMutex (org.apache.curator.framework.recipes.locks.InterProcessMutex)7 LinkedHashSet (java.util.LinkedHashSet)6 Test (org.testng.annotations.Test)6 SetupException (org.apache.atlas.setup.SetupException)3 ACL (org.apache.zookeeper.data.ACL)2 Id (org.apache.zookeeper.data.Id)2 InOrder (org.mockito.InOrder)2 PostConstruct (javax.annotation.PostConstruct)1 HAConfiguration (org.apache.atlas.ha.HAConfiguration)1 CreateBuilder (org.apache.curator.framework.api.CreateBuilder)1 DeleteBuilder (org.apache.curator.framework.api.DeleteBuilder)1 Stat (org.apache.zookeeper.data.Stat)1