use of org.eclipse.che.api.factory.shared.dto.FactoryDto in project che by eclipse.
the class FactoryServiceTest method shouldGenerateFactoryJsonIncludeGivenProjects.
@Test
public void shouldGenerateFactoryJsonIncludeGivenProjects() throws Exception {
// given
final String wsId = "workspace123234";
WorkspaceImpl.WorkspaceImplBuilder ws = WorkspaceImpl.builder();
WorkspaceConfigImpl.WorkspaceConfigImplBuilder wsConfig = WorkspaceConfigImpl.builder();
ws.setId(wsId);
wsConfig.setProjects(Arrays.asList(DTO.createDto(ProjectConfigDto.class).withPath("/proj1").withSource(DTO.createDto(SourceStorageDto.class).withType("git").withLocation("location")), DTO.createDto(ProjectConfigDto.class).withPath("/proj2").withSource(DTO.createDto(SourceStorageDto.class).withType("git").withLocation("location"))));
wsConfig.setName("wsname");
wsConfig.setEnvironments(singletonMap("env1", DTO.createDto(EnvironmentDto.class)));
wsConfig.setDefaultEnv("env1");
ws.setStatus(WorkspaceStatus.RUNNING);
wsConfig.setCommands(singletonList(DTO.createDto(CommandDto.class).withName("MCI").withType("mvn").withCommandLine("clean install")));
ws.setConfig(wsConfig.build());
WorkspaceImpl usersWorkspace = ws.build();
when(workspaceManager.getWorkspace(eq(wsId))).thenReturn(usersWorkspace);
// when
Response response = given().auth().basic(ADMIN_USER_NAME, ADMIN_USER_PASSWORD).when().get("/private" + SERVICE_PATH + "/workspace/" + wsId);
// then
assertEquals(response.getStatusCode(), 200);
FactoryDto result = DTO.createDtoFromJson(response.getBody().asString(), FactoryDto.class);
assertEquals(result.getWorkspace().getProjects().size(), 2);
}
use of org.eclipse.che.api.factory.shared.dto.FactoryDto in project che by eclipse.
the class FactoryServiceTest method shouldBeAbleToUpdateFactory.
@Test
public void shouldBeAbleToUpdateFactory() throws Exception {
final Factory existed = createFactory();
final Factory update = createFactoryWithStorage(null, "git", "https://github.com/codenvy/platform-api1.git");
when(factoryManager.getById(FACTORY_ID)).thenReturn(existed);
when(factoryManager.updateFactory(any())).thenReturn(update);
final Response response = given().auth().basic(ADMIN_USER_NAME, ADMIN_USER_PASSWORD).contentType(APPLICATION_JSON).body(JsonHelper.toJson(asDto(existed, user))).when().expect().statusCode(200).put(SERVICE_PATH + "/" + FACTORY_ID);
final FactoryDto result = getFromResponse(response, FactoryDto.class);
verify(factoryManager, times(1)).updateFactory(any());
assertEquals(result.withLinks(emptyList()), asDto(update, user));
}
use of org.eclipse.che.api.factory.shared.dto.FactoryDto in project che by eclipse.
the class FactoryBuilderTest method notValidParamsProvider.
@DataProvider(name = "notValidParamsProvider")
public static Object[][] notValidParamsProvider() throws URISyntaxException, IOException, NoSuchMethodException {
FactoryDto factory = prepareFactory();
EnvironmentDto environmentDto = factory.getWorkspace().getEnvironments().values().iterator().next();
environmentDto.getRecipe().withType(null);
return new Object[][] { { requireNonNull(dto.clone(factory)).withWorkspace(factory.getWorkspace().withDefaultEnv(null)) }, { requireNonNull(dto.clone(factory)).withWorkspace(factory.getWorkspace().withEnvironments(singletonMap("test", environmentDto))) } };
}
use of org.eclipse.che.api.factory.shared.dto.FactoryDto in project che by eclipse.
the class FactoryBuilderTest method shouldBeAbleToValidateV4_0WithTrackedParamsWithoutAccountIdIfOnPremisesIsEnabled.
@Test
public void shouldBeAbleToValidateV4_0WithTrackedParamsWithoutAccountIdIfOnPremisesIsEnabled() throws Exception {
factoryBuilder = new FactoryBuilder(sourceProjectParametersValidator);
FactoryDto factory = prepareFactory().withPolicies(dto.createDto(PoliciesDto.class).withReferer("referrer").withSince(123L).withUntil(123L));
factoryBuilder.checkValid(factory);
}
use of org.eclipse.che.api.factory.shared.dto.FactoryDto in project che by eclipse.
the class FactoryBaseValidatorTest method invalidParametersFactoryUrlProvider.
@DataProvider(name = "badAdvancedFactoryUrlProvider")
public Object[][] invalidParametersFactoryUrlProvider() throws UnsupportedEncodingException {
FactoryDto adv1 = prepareFactoryWithGivenStorage("notagit", VALID_REPOSITORY_URL, VALID_PROJECT_PATH);
FactoryDto adv2 = prepareFactoryWithGivenStorage("git", null, VALID_PROJECT_PATH);
FactoryDto adv3 = prepareFactoryWithGivenStorage("git", "", VALID_PROJECT_PATH);
return new Object[][] { // invalid vcs
{ adv1 }, // invalid vcsurl
{ adv2 }, // invalid vcsurl
{ adv3 } };
}
Aggregations