Skip to content
Snippets Groups Projects
Commit f9346545 authored by felmer's avatar felmer
Browse files

SSDM-5773: bug fixed: wrong UserFailureException class used. New system test

SVN: 39057
parent 22a12a31
No related branches found
No related tags found
No related merge requests found
...@@ -35,7 +35,7 @@ import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.experiment.IExperime ...@@ -35,7 +35,7 @@ import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.experiment.IExperime
import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.material.IMaterialTypeAuthorizationExecutor; import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.material.IMaterialTypeAuthorizationExecutor;
import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.sample.ISampleTypeAuthorizationExecutor; import ch.ethz.sis.openbis.generic.server.asapi.v3.executor.sample.ISampleTypeAuthorizationExecutor;
import ch.ethz.sis.openbis.generic.server.asapi.v3.helper.entity.EntityKindConverter; import ch.ethz.sis.openbis.generic.server.asapi.v3.helper.entity.EntityKindConverter;
import ch.systemsx.cisd.openbis.generic.client.web.client.exception.UserFailureException; import ch.systemsx.cisd.common.exceptions.UserFailureException;
import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePE; import ch.systemsx.cisd.openbis.generic.shared.dto.EntityTypePE;
import ch.systemsx.cisd.openbis.generic.shared.dto.properties.EntityKind; import ch.systemsx.cisd.openbis.generic.shared.dto.properties.EntityKind;
......
...@@ -43,8 +43,6 @@ import ch.ethz.sis.openbis.generic.asapi.v3.dto.sample.search.SampleTypeSearchCr ...@@ -43,8 +43,6 @@ import ch.ethz.sis.openbis.generic.asapi.v3.dto.sample.search.SampleTypeSearchCr
import ch.systemsx.cisd.common.action.IDelegatedAction; import ch.systemsx.cisd.common.action.IDelegatedAction;
/** /**
*
*
* @author Franz-Josef Elmer * @author Franz-Josef Elmer
*/ */
public class DeleteEntityTypeTest extends AbstractTest public class DeleteEntityTypeTest extends AbstractTest
...@@ -69,45 +67,68 @@ public class DeleteEntityTypeTest extends AbstractTest ...@@ -69,45 +67,68 @@ public class DeleteEntityTypeTest extends AbstractTest
entityTypeIds.addAll(v3api.createSampleTypes(sessionToken, Arrays.asList(sampleTypeCreation))); entityTypeIds.addAll(v3api.createSampleTypes(sessionToken, Arrays.asList(sampleTypeCreation)));
EntityTypeDeletionOptions deletionOptions = new EntityTypeDeletionOptions(); EntityTypeDeletionOptions deletionOptions = new EntityTypeDeletionOptions();
deletionOptions.setReason("test"); deletionOptions.setReason("test");
// When // When
v3api.deleteEntityTypes(sessionToken, entityTypeIds, deletionOptions); v3api.deleteEntityTypes(sessionToken, entityTypeIds, deletionOptions);
// Then // Then
DataSetTypeSearchCriteria dataSetTypeSearchCriteria = new DataSetTypeSearchCriteria(); DataSetTypeSearchCriteria dataSetTypeSearchCriteria = new DataSetTypeSearchCriteria();
dataSetTypeSearchCriteria.withCode().thatEquals(dataSetTypeCreation.getCode()); dataSetTypeSearchCriteria.withCode().thatEquals(dataSetTypeCreation.getCode());
assertEquals(v3api.searchDataSetTypes(sessionToken, dataSetTypeSearchCriteria, new DataSetTypeFetchOptions()).getObjects().toString(), "[]"); assertEquals(v3api.searchDataSetTypes(sessionToken, dataSetTypeSearchCriteria, new DataSetTypeFetchOptions()).getObjects().toString(), "[]");
ExperimentTypeSearchCriteria experimentTypeSearchCriteria = new ExperimentTypeSearchCriteria(); ExperimentTypeSearchCriteria experimentTypeSearchCriteria = new ExperimentTypeSearchCriteria();
experimentTypeSearchCriteria.withCode().thatEquals(experimentTypeCreation.getCode()); experimentTypeSearchCriteria.withCode().thatEquals(experimentTypeCreation.getCode());
assertEquals(v3api.searchExperimentTypes(sessionToken, experimentTypeSearchCriteria, new ExperimentTypeFetchOptions()).getObjects().toString(), "[]"); assertEquals(
v3api.searchExperimentTypes(sessionToken, experimentTypeSearchCriteria, new ExperimentTypeFetchOptions()).getObjects().toString(),
"[]");
MaterialTypeSearchCriteria materialTypeSearchCriteria = new MaterialTypeSearchCriteria(); MaterialTypeSearchCriteria materialTypeSearchCriteria = new MaterialTypeSearchCriteria();
materialTypeSearchCriteria.withCode().thatEquals(materialTypeCreation.getCode()); materialTypeSearchCriteria.withCode().thatEquals(materialTypeCreation.getCode());
assertEquals(v3api.searchMaterialTypes(sessionToken, materialTypeSearchCriteria, new MaterialTypeFetchOptions()).getObjects().toString(), "[]"); assertEquals(v3api.searchMaterialTypes(sessionToken, materialTypeSearchCriteria, new MaterialTypeFetchOptions()).getObjects().toString(),
"[]");
SampleTypeSearchCriteria sampleTypeSearchCriteria = new SampleTypeSearchCriteria(); SampleTypeSearchCriteria sampleTypeSearchCriteria = new SampleTypeSearchCriteria();
sampleTypeSearchCriteria.withCode().thatEquals(sampleTypeCreation.getCode()); sampleTypeSearchCriteria.withCode().thatEquals(sampleTypeCreation.getCode());
assertEquals(v3api.searchSampleTypes(sessionToken, sampleTypeSearchCriteria, new SampleTypeFetchOptions()).getObjects().toString(), "[]"); assertEquals(v3api.searchSampleTypes(sessionToken, sampleTypeSearchCriteria, new SampleTypeFetchOptions()).getObjects().toString(), "[]");
} }
@Test
public void testDeleteWithUnspecifiedEntityKind()
{
EntityTypePermId typeId = new EntityTypePermId("DELETION_TEST");
assertUserFailureException(new IDelegatedAction()
{
@Override
public void execute()
{
// Given
String sessionToken = v3api.login(TEST_USER, PASSWORD);
EntityTypeDeletionOptions deletionOptions = new EntityTypeDeletionOptions();
deletionOptions.setReason("test");
// When
v3api.deleteEntityTypes(sessionToken, Arrays.asList(typeId), deletionOptions);
}
}, "Entity type id with unspecified entity kind");
}
@Test(dataProvider = "usersNotAllowedToDelete") @Test(dataProvider = "usersNotAllowedToDelete")
public void testDeleteWithUserCausingAuthorizationFailure(EntityKind entityKind, final String user) public void testDeleteWithUserCausingAuthorizationFailure(EntityKind entityKind, final String user)
{ {
EntityTypePermId typeId = new EntityTypePermId("DELETION_TEST", entityKind); EntityTypePermId typeId = new EntityTypePermId("DELETION_TEST", entityKind);
assertUnauthorizedObjectAccessException(new IDelegatedAction() assertUnauthorizedObjectAccessException(new IDelegatedAction()
{
@Override
public void execute()
{ {
// Given @Override
String sessionToken = v3api.login(user, PASSWORD); public void execute()
EntityTypeDeletionOptions deletionOptions = new EntityTypeDeletionOptions(); {
deletionOptions.setReason("test"); // Given
String sessionToken = v3api.login(user, PASSWORD);
// When EntityTypeDeletionOptions deletionOptions = new EntityTypeDeletionOptions();
v3api.deleteEntityTypes(sessionToken, Arrays.asList(typeId), deletionOptions); deletionOptions.setReason("test");
}
}, typeId); // When
v3api.deleteEntityTypes(sessionToken, Arrays.asList(typeId), deletionOptions);
}
}, typeId);
} }
@DataProvider @DataProvider
Object[][] usersNotAllowedToDelete() Object[][] usersNotAllowedToDelete()
{ {
...@@ -119,8 +140,8 @@ public class DeleteEntityTypeTest extends AbstractTest ...@@ -119,8 +140,8 @@ public class DeleteEntityTypeTest extends AbstractTest
{ {
for (int j = 0; j < users.size(); j++) for (int j = 0; j < users.size(); j++)
{ {
objects[users.size() * i + j] = new Object[] {entityKinds[i], users.get(j)}; objects[users.size() * i + j] = new Object[] { entityKinds[i], users.get(j) };
} }
} }
return objects; return objects;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment