Search in sources :

Example 16 with DistroXTestDto

use of com.sequenceiq.it.cloudbreak.dto.distrox.DistroXTestDto in project cloudbreak by hortonworks.

the class DataHubCreateInternalApiTest method createInternalBlueprintsAndRecipesAndDataHubFromThem.

@Test(dataProvider = TEST_CONTEXT_WITH_MOCK)
@Description(given = "internal recipes, blueprints", when = "creates datahub through internal api", then = "initiator user can do main operations on it")
public void createInternalBlueprintsAndRecipesAndDataHubFromThem(TestContext testContext) {
    String accountId = Crn.safeFromString(cloudbreakActor.useRealUmsUser(AuthUserKeys.USER_ENV_CREATOR_A).getCrn()).getAccountId();
    resourceCreator.createDefaultImageCatalog(testContext);
    RecipeTestDto recipe = resourceCreator.createDefaultRecipeInternal(testContext, accountId);
    BlueprintTestDto blueprint = resourceCreator.createDefaultBlueprintInternal(testContext, accountId, commonClusterManagerProperties().getRuntimeVersion());
    recipe.when(recipeTestClient.getV4Internal()).validate();
    blueprint.when(blueprintTestClient.getV4Internal()).validate();
    resourceCreator.createDefaultCredential(testContext);
    resourceCreator.createDefaultEnvironment(testContext);
    resourceCreator.createDefaultFreeIpa(testContext);
    resourceCreator.createDefaultDataLake(testContext);
    DistroXTestDto distroXTestDto = testContext.given(DistroXNetworkTestDto.class).given(DistroXImageTestDto.class).withImageCatalog().withImageId(IMAGE_CATALOG_ID).given(DistroXClouderaManagerTestDto.class).given(DistroXClusterTestDto.class).withBlueprintName(blueprint.getName()).withClouderaManager().given(DistroXTestDto.class).withRecipe(recipe.getName()).withInitiatorUserCrn(cloudbreakActor.useRealUmsUser(AuthUserKeys.USER_ENV_CREATOR_A).getCrn());
    distroXTestDto.withCluster().withImageSettings(testContext.given(DistroXImageTestDto.class)).withNetwork(testContext.given(DistroXNetworkTestDto.class));
    resourceCreator.createInternalAndWaitAs(distroXTestDto, Optional.of(AuthUserKeys.USER_ACCOUNT_ADMIN));
    RunningParameter envCreatorA = user(AuthUserKeys.USER_ENV_CREATOR_A);
    RunningParameter envCreatorB = user(AuthUserKeys.USER_ENV_CREATOR_B);
    RunningParameter accountAdmin = user(AuthUserKeys.USER_ACCOUNT_ADMIN);
    distroXTestDto.when(distroXTestClient.get(), envCreatorA).validate();
    distroXTestDto.when(distroXTestClient.stop(), envCreatorA).await(STACK_STOPPED, accountAdmin).validate();
    distroXTestDto.when(distroXTestClient.start(), envCreatorA).await(STACK_AVAILABLE, accountAdmin).validate();
    testContext.given(UmsTestDto.class).assignTarget(EnvironmentTestDto.class.getSimpleName()).withEnvironmentUser().when(umsTestClient.assignResourceRole(AuthUserKeys.USER_ENV_CREATOR_B, regionAwareInternalCrnGeneratorFactory)).validate();
    distroXTestDto.when(distroXTestClient.get(), envCreatorB).validate();
    distroXTestDto.when(distroXTestClient.delete(), envCreatorA).await(STACK_DELETED, accountAdmin).validate();
    useRealUmsUser(testContext, AuthUserKeys.USER_ACCOUNT_ADMIN);
}
Also used : BlueprintTestDto(com.sequenceiq.it.cloudbreak.dto.blueprint.BlueprintTestDto) RunningParameter(com.sequenceiq.it.cloudbreak.context.RunningParameter) DistroXTestDto(com.sequenceiq.it.cloudbreak.dto.distrox.DistroXTestDto) DistroXImageTestDto(com.sequenceiq.it.cloudbreak.dto.distrox.image.DistroXImageTestDto) RecipeTestDto(com.sequenceiq.it.cloudbreak.dto.recipe.RecipeTestDto) DistroXClusterTestDto(com.sequenceiq.it.cloudbreak.dto.distrox.cluster.DistroXClusterTestDto) DistroXNetworkTestDto(com.sequenceiq.it.cloudbreak.dto.distrox.instancegroup.DistroXNetworkTestDto) Description(com.sequenceiq.it.cloudbreak.context.Description) Test(org.testng.annotations.Test) AbstractIntegrationTest(com.sequenceiq.it.cloudbreak.testcase.AbstractIntegrationTest)

Aggregations

DistroXTestDto (com.sequenceiq.it.cloudbreak.dto.distrox.DistroXTestDto)16 Test (org.testng.annotations.Test)11 StackV4Response (com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.StackV4Response)7 MockedTestContext (com.sequenceiq.it.cloudbreak.context.MockedTestContext)7 TestContext (com.sequenceiq.it.cloudbreak.context.TestContext)7 TagsV4Response (com.sequenceiq.cloudbreak.api.endpoint.v4.stacks.response.tags.TagsV4Response)6 ArgumentMatchers.anyString (org.mockito.ArgumentMatchers.anyString)5 Description (com.sequenceiq.it.cloudbreak.context.Description)4 HashMap (java.util.HashMap)3 DistroXClusterTestDto (com.sequenceiq.it.cloudbreak.dto.distrox.cluster.DistroXClusterTestDto)2 DistroXImageTestDto (com.sequenceiq.it.cloudbreak.dto.distrox.image.DistroXImageTestDto)2 SdxTestDto (com.sequenceiq.it.cloudbreak.dto.sdx.SdxTestDto)2 TestFailException (com.sequenceiq.it.cloudbreak.exception.TestFailException)2 Log (com.sequenceiq.it.cloudbreak.log.Log)2 AbstractClouderaManagerTest (com.sequenceiq.it.cloudbreak.testcase.mock.clouderamanager.AbstractClouderaManagerTest)2 String.format (java.lang.String.format)2 List (java.util.List)2 Map (java.util.Map)2 Set (java.util.Set)2 Collectors (java.util.stream.Collectors)2