Search in sources :

Example 11 with AccountImpl

use of org.eclipse.che.account.spi.AccountImpl in project che by eclipse.

the class WorkspaceManagerTest method setUp.

@BeforeMethod
public void setUp() throws Exception {
    MockitoAnnotations.initMocks(this);
    workspaceManager = new WorkspaceManager(workspaceDao, runtimes, eventService, accountManager, false, false, snapshotDao, sharedPool);
    when(accountManager.getByName(NAMESPACE)).thenReturn(new AccountImpl("accountId", NAMESPACE, "test"));
    when(accountManager.getByName(NAMESPACE_2)).thenReturn(new AccountImpl("accountId2", NAMESPACE_2, "test"));
    when(workspaceDao.create(any(WorkspaceImpl.class))).thenAnswer(invocation -> invocation.getArguments()[0]);
    when(workspaceDao.update(any(WorkspaceImpl.class))).thenAnswer(invocation -> invocation.getArguments()[0]);
    EnvironmentContext.setCurrent(new EnvironmentContext() {

        @Override
        public Subject getSubject() {
            return new SubjectImpl(NAMESPACE, USER_ID, "token", false);
        }
    });
}
Also used : EnvironmentContext(org.eclipse.che.commons.env.EnvironmentContext) WorkspaceImpl(org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl) AccountImpl(org.eclipse.che.account.spi.AccountImpl) SubjectImpl(org.eclipse.che.commons.subject.SubjectImpl) Subject(org.eclipse.che.commons.subject.Subject) BeforeMethod(org.testng.annotations.BeforeMethod)

Example 12 with AccountImpl

use of org.eclipse.che.account.spi.AccountImpl in project che by eclipse.

the class DefaultWorkspaceValidatorTest method shouldFailValidationIfAttributeNameStartsWithWordCodenvy.

@Test(expectedExceptions = BadRequestException.class, expectedExceptionsMessageRegExp = "Attribute name '.*' is not valid")
public void shouldFailValidationIfAttributeNameStartsWithWordCodenvy() throws Exception {
    final AccountImpl account = new AccountImpl("accountId", "namespace", "test");
    final WorkspaceImpl workspace = new WorkspaceImpl("id", account, createConfig());
    workspace.getAttributes().put("codenvy_key", "value1");
    wsValidator.validateWorkspace(workspace);
}
Also used : WorkspaceImpl(org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl) AccountImpl(org.eclipse.che.account.spi.AccountImpl) Test(org.testng.annotations.Test)

Example 13 with AccountImpl

use of org.eclipse.che.account.spi.AccountImpl in project che by eclipse.

the class PostgreSqlTckModule method configure.

@Override
protected void configure() {
    final String dbUrl = System.getProperty("jdbc.url");
    final String dbUser = System.getProperty("jdbc.user");
    final String dbPassword = System.getProperty("jdbc.password");
    waitConnectionIsEstablished(dbUrl, dbUser, dbPassword);
    // jpa
    install(new PersistTestModuleBuilder().setDriver(Driver.class).setUrl(dbUrl).setUser(dbUser).setPassword(dbPassword).setExceptionHandler(PostgreSqlExceptionHandler.class).addEntityClasses(AccountImpl.class, UserImpl.class, ProfileImpl.class, PreferenceEntity.class, WorkspaceImpl.class, WorkspaceConfigImpl.class, ProjectConfigImpl.class, EnvironmentImpl.class, EnvironmentRecipeImpl.class, ExtendedMachineImpl.class, SourceStorageImpl.class, ServerConf2Impl.class, StackImpl.class, CommandImpl.class, SnapshotImpl.class, RecipeImpl.class, SshPairImpl.class).addEntityClass("org.eclipse.che.api.workspace.server.model.impl.ProjectConfigImpl$Attribute").build());
    bind(TckResourcesCleaner.class).to(JpaCleaner.class);
    // db initialization
    bind(DBInitializer.class).asEagerSingleton();
    final PGSimpleDataSource dataSource = new PGSimpleDataSource();
    dataSource.setUser(dbUser);
    dataSource.setPassword(dbPassword);
    dataSource.setUrl(dbUrl);
    bind(SchemaInitializer.class).toInstance(new FlywaySchemaInitializer(dataSource, "che-schema"));
    // account
    bind(AccountDao.class).to(JpaAccountDao.class);
    bind(new TypeLiteral<TckRepository<AccountImpl>>() {
    }).toInstance(new JpaTckRepository<>(AccountImpl.class));
    // user
    bind(UserDao.class).to(JpaUserDao.class);
    bind(ProfileDao.class).to(JpaProfileDao.class);
    bind(PreferenceDao.class).to(JpaPreferenceDao.class);
    bind(new TypeLiteral<TckRepository<UserImpl>>() {
    }).to(UserRepo.class);
    bind(new TypeLiteral<TckRepository<Pair<String, Map<String, String>>>>() {
    }).to(PreferencesRepo.class);
    bind(new TypeLiteral<TckRepository<ProfileImpl>>() {
    }).toInstance(new JpaTckRepository<>(ProfileImpl.class));
    bind(PasswordEncryptor.class).to(SHA512PasswordEncryptor.class);
    // machine
    bind(RecipeDao.class).to(JpaRecipeDao.class);
    bind(SnapshotDao.class).to(JpaSnapshotDao.class);
    bind(new TypeLiteral<TckRepository<RecipeImpl>>() {
    }).toInstance(new JpaTckRepository<>(RecipeImpl.class));
    bind(new TypeLiteral<TckRepository<SnapshotImpl>>() {
    }).toInstance(new JpaTckRepository<>(SnapshotImpl.class));
    bind(new TypeLiteral<TckRepository<Workspace>>() {
    }).toInstance(new WorkspaceRepoForSnapshots());
    // ssh
    bind(SshDao.class).to(JpaSshDao.class);
    bind(new TypeLiteral<TckRepository<SshPairImpl>>() {
    }).toInstance(new JpaTckRepository<>(SshPairImpl.class));
    // workspace
    bind(WorkspaceDao.class).to(JpaWorkspaceDao.class);
    bind(StackDao.class).to(JpaStackDao.class);
    bind(new TypeLiteral<TckRepository<WorkspaceImpl>>() {
    }).toInstance(new WorkspaceRepository());
    bind(new TypeLiteral<TckRepository<StackImpl>>() {
    }).toInstance(new StackRepository());
}
Also used : TckResourcesCleaner(org.eclipse.che.commons.test.tck.TckResourcesCleaner) WorkspaceImpl(org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl) StackImpl(org.eclipse.che.api.workspace.server.model.impl.stack.StackImpl) SshPairImpl(org.eclipse.che.api.ssh.server.model.impl.SshPairImpl) PreferenceEntity(org.eclipse.che.api.user.server.jpa.PreferenceEntity) AccountImpl(org.eclipse.che.account.spi.AccountImpl) EnvironmentImpl(org.eclipse.che.api.workspace.server.model.impl.EnvironmentImpl) SchemaInitializer(org.eclipse.che.core.db.schema.SchemaInitializer) FlywaySchemaInitializer(org.eclipse.che.core.db.schema.impl.flyway.FlywaySchemaInitializer) FlywaySchemaInitializer(org.eclipse.che.core.db.schema.impl.flyway.FlywaySchemaInitializer) JpaProfileDao(org.eclipse.che.api.user.server.jpa.JpaProfileDao) ProfileDao(org.eclipse.che.api.user.server.spi.ProfileDao) JpaSnapshotDao(org.eclipse.che.api.machine.server.jpa.JpaSnapshotDao) SnapshotDao(org.eclipse.che.api.machine.server.spi.SnapshotDao) ServerConf2Impl(org.eclipse.che.api.workspace.server.model.impl.ServerConf2Impl) TypeLiteral(com.google.inject.TypeLiteral) UserDao(org.eclipse.che.api.user.server.spi.UserDao) JpaUserDao(org.eclipse.che.api.user.server.jpa.JpaUserDao) DBInitializer(org.eclipse.che.core.db.DBInitializer) JpaRecipeDao(org.eclipse.che.api.machine.server.jpa.JpaRecipeDao) RecipeDao(org.eclipse.che.api.machine.server.spi.RecipeDao) ExtendedMachineImpl(org.eclipse.che.api.workspace.server.model.impl.ExtendedMachineImpl) UserImpl(org.eclipse.che.api.user.server.model.impl.UserImpl) WorkspaceConfigImpl(org.eclipse.che.api.workspace.server.model.impl.WorkspaceConfigImpl) PGSimpleDataSource(org.postgresql.ds.PGSimpleDataSource) EnvironmentRecipeImpl(org.eclipse.che.api.workspace.server.model.impl.EnvironmentRecipeImpl) Pair(org.eclipse.che.commons.lang.Pair) CommandImpl(org.eclipse.che.api.machine.server.model.impl.CommandImpl) SnapshotImpl(org.eclipse.che.api.machine.server.model.impl.SnapshotImpl) PasswordEncryptor(org.eclipse.che.security.PasswordEncryptor) SHA512PasswordEncryptor(org.eclipse.che.security.SHA512PasswordEncryptor) AccountDao(org.eclipse.che.account.spi.AccountDao) JpaAccountDao(org.eclipse.che.account.spi.jpa.JpaAccountDao) JpaPreferenceDao(org.eclipse.che.api.user.server.jpa.JpaPreferenceDao) PreferenceDao(org.eclipse.che.api.user.server.spi.PreferenceDao) SshDao(org.eclipse.che.api.ssh.server.spi.SshDao) JpaSshDao(org.eclipse.che.api.ssh.server.jpa.JpaSshDao) SourceStorageImpl(org.eclipse.che.api.workspace.server.model.impl.SourceStorageImpl) PersistTestModuleBuilder(org.eclipse.che.commons.test.db.PersistTestModuleBuilder) ProfileImpl(org.eclipse.che.api.user.server.model.impl.ProfileImpl) JpaStackDao(org.eclipse.che.api.workspace.server.jpa.JpaStackDao) StackDao(org.eclipse.che.api.workspace.server.spi.StackDao) RecipeImpl(org.eclipse.che.api.machine.server.recipe.RecipeImpl) EnvironmentRecipeImpl(org.eclipse.che.api.workspace.server.model.impl.EnvironmentRecipeImpl) JpaWorkspaceDao(org.eclipse.che.api.workspace.server.jpa.JpaWorkspaceDao) WorkspaceDao(org.eclipse.che.api.workspace.server.spi.WorkspaceDao) ProjectConfigImpl(org.eclipse.che.api.workspace.server.model.impl.ProjectConfigImpl) Workspace(org.eclipse.che.api.core.model.workspace.Workspace)

Example 14 with AccountImpl

use of org.eclipse.che.account.spi.AccountImpl in project che by eclipse.

the class WorkspaceManagerTest method createAndMockWorkspace.

private WorkspaceImpl createAndMockWorkspace(WorkspaceConfig cfg, String namespace) throws NotFoundException, ServerException {
    WorkspaceImpl workspace = WorkspaceImpl.builder().generateId().setConfig(cfg).setAccount(new AccountImpl("id", namespace, "type")).setStatus(WorkspaceStatus.STOPPED).build();
    when(workspaceDao.get(workspace.getId())).thenReturn(workspace);
    when(workspaceDao.get(workspace.getConfig().getName(), workspace.getNamespace())).thenReturn(workspace);
    when(workspaceDao.get(workspace.getConfig().getName(), NAMESPACE)).thenReturn(workspace);
    when(workspaceDao.getByNamespace(workspace.getNamespace())).thenReturn(singletonList(workspace));
    when(workspaceDao.getByNamespace(NAMESPACE)).thenReturn(singletonList(workspace));
    when(workspaceDao.getWorkspaces(USER_ID)).thenReturn(singletonList(workspace));
    return workspace;
}
Also used : WorkspaceImpl(org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl) AccountImpl(org.eclipse.che.account.spi.AccountImpl)

Example 15 with AccountImpl

use of org.eclipse.che.account.spi.AccountImpl in project che by eclipse.

the class WorkspaceDaoTest method createEntities.

@BeforeMethod
public void createEntities() throws TckRepositoryException {
    accounts = new AccountImpl[COUNT_OF_ACCOUNTS];
    for (int i = 0; i < COUNT_OF_ACCOUNTS; i++) {
        accounts[i] = new AccountImpl("accountId" + i, "accountName" + i, "test");
    }
    workspaces = new WorkspaceImpl[COUNT_OF_WORKSPACES];
    for (int i = 0; i < COUNT_OF_WORKSPACES; i++) {
        // 2 workspaces share 1 namespace
        workspaces[i] = createWorkspace("workspace-" + i, accounts[i / 2], "name-" + i);
    }
    accountRepo.createAll(Arrays.asList(accounts));
    workspaceRepo.createAll(Stream.of(workspaces).map(WorkspaceImpl::new).collect(toList()));
}
Also used : WorkspaceImpl(org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl) AccountImpl(org.eclipse.che.account.spi.AccountImpl) BeforeMethod(org.testng.annotations.BeforeMethod)

Aggregations

AccountImpl (org.eclipse.che.account.spi.AccountImpl)27 Test (org.testng.annotations.Test)13 WorkspaceImpl (org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl)12 BeforeMethod (org.testng.annotations.BeforeMethod)5 TypeLiteral (com.google.inject.TypeLiteral)4 TckResourcesCleaner (org.eclipse.che.commons.test.tck.TckResourcesCleaner)4 DBInitializer (org.eclipse.che.core.db.DBInitializer)4 SchemaInitializer (org.eclipse.che.core.db.schema.SchemaInitializer)4 FlywaySchemaInitializer (org.eclipse.che.core.db.schema.impl.flyway.FlywaySchemaInitializer)4 Transactional (com.google.inject.persist.Transactional)3 EntityManager (javax.persistence.EntityManager)3 NotFoundException (org.eclipse.che.api.core.NotFoundException)3 AccountDao (org.eclipse.che.account.spi.AccountDao)2 JpaAccountDao (org.eclipse.che.account.spi.jpa.JpaAccountDao)2 ServerException (org.eclipse.che.api.core.ServerException)2 Workspace (org.eclipse.che.api.core.model.workspace.Workspace)2 CommandImpl (org.eclipse.che.api.machine.server.model.impl.CommandImpl)2 SnapshotImpl (org.eclipse.che.api.machine.server.model.impl.SnapshotImpl)2 RecipeImpl (org.eclipse.che.api.machine.server.recipe.RecipeImpl)2 RecipeDao (org.eclipse.che.api.machine.server.spi.RecipeDao)2