use of org.eclipse.che.api.workspace.shared.dto.WorkspaceConfigDto in project che by eclipse.
the class SimpleGeneratorStrategyTest method prepareProject.
private void prepareProject() throws Exception {
final String vfsUser = "dev";
Set<ProjectTypeDef> pts = new HashSet<>();
final ProjectTypeDef pt = new ProjectTypeDef("mytype", "mytype type", true, false) {
};
pts.add(pt);
final ProjectTypeRegistry projectTypeRegistry = new ProjectTypeRegistry(pts);
final EventService eventService = new EventService();
// final VirtualFileSystemRegistry vfsRegistry = new VirtualFileSystemRegistry();
// final MemoryFileSystemProvider memoryFileSystemProvider =
// new MemoryFileSystemProvider(workspace,
// eventService,
// new VirtualFileSystemUserContext() {
// @Override
// public VirtualFileSystemUser getVirtualFileSystemUser() {
// return new VirtualFileSystemUser(vfsUser, vfsUserGroups);
// }
// },
// vfsRegistry,
// SystemPathsFilter.ANY);
// vfsRegistry.registerProvider(workspace, memoryFileSystemProvider);
WorkspaceDto usersWorkspaceMock = mock(WorkspaceDto.class);
final ProjectConfigDto projectConfigDto = DtoFactory.getInstance().createDto(ProjectConfigDto.class).withPath("/my_project");
WorkspaceConfigDto workspaceConfigMock = mock(WorkspaceConfigDto.class);
when(usersWorkspaceMock.getConfig()).thenReturn(workspaceConfigMock);
when(workspaceConfigMock.getProjects()).thenReturn(Collections.singletonList(projectConfigDto));
ProjectHandlerRegistry handlerRegistry = new ProjectHandlerRegistry(new HashSet<>());
// pm = new ProjectManager(vfsRegistry,
// eventService,
// projectTypeRegistry,
// handlerRegistry,
// filterProvider,
// API_ENDPOINT,
// httpJsonRequestFactory);
// HttpJsonRequest httpJsonRequest = mock(HttpJsonRequest.class, new SelfReturningAnswer());
// when(httpJsonRequestFactory.fromLink(eq(DtoFactory.newDto(Link.class)
// .withMethod("PUT")
// .withHref(API_ENDPOINT + "/workspace/" + workspace + "/project"))))
// .thenReturn(httpJsonRequest);
// when(httpJsonRequestFactory.fromLink(eq(DtoFactory.newDto(Link.class)
// .withMethod("GET")
// .withHref(API_ENDPOINT + "/workspace/" + workspace))))
// .thenReturn(httpJsonRequest);
// when(httpJsonRequest.request()).thenReturn(httpJsonResponse);
when(httpJsonResponse.asDto(WorkspaceDto.class)).thenReturn(usersWorkspaceMock);
pm.createProject(DtoFactory.getInstance().createDto(ProjectConfigDto.class).withType(pt.getId()).withName("my_project").withPath("/my_project"), null);
}
use of org.eclipse.che.api.workspace.shared.dto.WorkspaceConfigDto in project che by eclipse.
the class MachineInfoPresenterTest method workspaceNameShouldBeSet.
@Test
public //TODO fix test
void workspaceNameShouldBeSet() throws Exception {
when(machine.getWorkspaceId()).thenReturn(SOME_TEXT);
WorkspaceConfigDto wsConfigDto = mock(WorkspaceConfigDto.class);
when(wsDescriptor.getConfig()).thenReturn(wsConfigDto);
when(wsConfigDto.getName()).thenReturn(SOME_TEXT);
when(wsService.getWorkspace(SOME_TEXT)).thenReturn(promise);
presenter.update(machine);
verify(wsService).getWorkspace(eq(SOME_TEXT));
verify(machine).getWorkspaceId();
// verify(wsDescriptor).getName();
// verify(view).setWorkspaceName(SOME_TEXT);
}
use of org.eclipse.che.api.workspace.shared.dto.WorkspaceConfigDto in project che by eclipse.
the class WorkspaceRuntimeIntegrationTest method environmentEngineShouldDestroyAllMachinesBeforeRemovalOfEnvironmentRecord.
// Check for https://github.com/codenvy/codenvy/issues/593
@Test(expectedExceptions = NotFoundException.class, expectedExceptionsMessageRegExp = "Workspace with id '" + WORKSPACE_ID + "' is not running")
public void environmentEngineShouldDestroyAllMachinesBeforeRemovalOfEnvironmentRecord() throws Exception {
// given
EnvironmentDto environment = newDto(EnvironmentDto.class);
environment.withMachines(singletonMap("service1", newDto(ExtendedMachineDto.class).withAgents(singletonList("org.eclipse.che.ws-agent"))));
WorkspaceConfigDto config = newDto(WorkspaceConfigDto.class).withDefaultEnv(ENV_NAME).withName("ws1").withEnvironments(singletonMap(ENV_NAME, environment));
WorkspaceDto workspace = newDto(WorkspaceDto.class).withId(WORKSPACE_ID).withNamespace("namespace").withConfig(config);
Instance instance = mock(Instance.class);
MachineConfigImpl machineConfig = new MachineConfigImpl();
machineConfig.setDev(true);
machineConfig.setName("service1");
when(instance.getWorkspaceId()).thenReturn(WORKSPACE_ID);
when(instance.getId()).thenReturn("machineId");
when(instance.getConfig()).thenReturn(machineConfig);
CheServicesEnvironmentImpl internalEnv = new CheServicesEnvironmentImpl();
internalEnv.getServices().put("service1", new CheServiceImpl().withId("machineId"));
when(environmentParser.parse(any(Environment.class))).thenReturn(internalEnv);
when(instanceProvider.startService(anyString(), anyString(), anyString(), anyString(), anyBoolean(), anyString(), any(CheServiceImpl.class), any(LineConsumer.class))).thenReturn(instance);
runtimes.startAsync(workspace, ENV_NAME, false);
verify(sharedPool).submit(taskCaptor.capture());
taskCaptor.getValue().call();
WaitingAnswer<Void> waitingAnswer = new WaitingAnswer<>();
doAnswer(waitingAnswer).when(instance).destroy();
// when
executor.execute(() -> {
try {
runtimes.stop(WORKSPACE_ID);
} catch (Exception e) {
LOG.error(e.getLocalizedMessage(), e);
}
});
waitingAnswer.waitAnswerCall(1, TimeUnit.SECONDS);
// then
// no exception - environment and workspace are still running
runtimes.getRuntime(WORKSPACE_ID);
// let instance removal proceed
waitingAnswer.completeAnswer();
// verify destroying was called
verify(instance, timeout(1000)).destroy();
verify(instanceProvider, timeout(1000)).destroyNetwork(anyString());
// wait to ensure that removal of runtime is finished
Thread.sleep(500);
// runtime is removed - now getting of it should throw an exception
runtimes.getRuntime(WORKSPACE_ID);
}
use of org.eclipse.che.api.workspace.shared.dto.WorkspaceConfigDto in project che by eclipse.
the class WorkspaceServiceTest method shouldStartTheWorkspaceAfterItIsCreatedWhenStartAfterCreateParamIsTrue.
@Test
public void shouldStartTheWorkspaceAfterItIsCreatedWhenStartAfterCreateParamIsTrue() throws Exception {
final WorkspaceConfigDto configDto = createConfigDto();
final WorkspaceImpl workspace = createWorkspace(configDto);
when(wsManager.createWorkspace(any(), any(), any())).thenReturn(workspace);
given().auth().basic(ADMIN_USER_NAME, ADMIN_USER_PASSWORD).contentType("application/json").body(configDto).when().post(SECURE_PATH + "/workspace" + "?attribute=stackId:stack123" + "&attribute=factoryId:factory123" + "&attribute=custom:custom:value" + "&start-after-create=true");
verify(wsManager).startWorkspace(workspace.getId(), null, false);
verify(wsManager).createWorkspace(anyObject(), anyString(), eq(ImmutableMap.of("stackId", "stack123", "factoryId", "factory123", "custom", "custom:value")));
}
Aggregations