Ravi Nori has uploaded a new change for review. Change subject: restapi : Add Role with wrong permit id leads to 500 error(#908392) ......................................................................
restapi : Add Role with wrong permit id leads to 500 error(#908392) Add Role with wrong permit id leads to internal server error. This patch returns a proper error message when the permit id is invalid. Change-Id: I9adfda37e67d24f96933aa4eb8f79a8fdb416d62 Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=908392 Signed-off-by: Ravi Nori <rn...@redhat.com> --- M backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendRolesResourceTest.java M backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java 2 files changed, 27 insertions(+), 1 deletion(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/24/11824/1 diff --git a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendRolesResourceTest.java b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendRolesResourceTest.java index a39b78f..088d8d9 100644 --- a/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendRolesResourceTest.java +++ b/backend/manager/modules/restapi/jaxrs/src/test/java/org/ovirt/engine/api/restapi/resource/BackendRolesResourceTest.java @@ -15,6 +15,7 @@ import org.ovirt.engine.core.common.action.RoleWithActionGroupsParameters; import org.ovirt.engine.core.common.action.RolesParameterBase; import org.ovirt.engine.core.common.action.VdcActionType; +import org.ovirt.engine.core.common.businessentities.ActionGroup; import org.ovirt.engine.core.common.businessentities.RoleType; import org.ovirt.engine.core.common.queries.MultilevelAdministrationByRoleIdParameters; import org.ovirt.engine.core.common.queries.MultilevelAdministrationsQueriesParameters; @@ -115,7 +116,7 @@ model.setName(NAMES[0].toString()); model.setPermits(new Permits()); model.getPermits().getPermits().add(new Permit()); - model.getPermits().getPermits().get(0).setId("1"); + model.getPermits().getPermits().get(0).setId(""+ActionGroup.CREATE_VM.getId()); Response response = collection.add(model); assertEquals(201, response.getStatus()); @@ -124,6 +125,25 @@ } @Test + public void testAddRoleInvalidPermit() throws Exception { + setUriInfo(setUpBasicUriExpectations()); + control.replay(); + Role model = new Role(); + model.setName(NAMES[0].toString()); + model.setPermits(new Permits()); + model.getPermits().getPermits().add(new Permit()); + model.getPermits().getPermits().get(0).setId("1234"); + + try { + Response response = collection.add(model); + fail("expected WebApplicationException"); + } catch(WebApplicationException wae) { + assertEquals(BAD_REQUEST, wae.getResponse().getStatus()); + assertEquals(wae.getResponse().getEntity(), "1234 is not a valid permit ID."); + } + } + + @Test public void testAddIncompleteParametersNoPermits() throws Exception { Role model = new Role(); model.setName(NAMES[0].toString()); diff --git a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java index 094b77a..ab45376 100644 --- a/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java +++ b/backend/manager/modules/restapi/types/src/main/java/org/ovirt/engine/api/restapi/types/PermitMapper.java @@ -282,6 +282,12 @@ return ActionGroup.LOGIN; case INJECT_EXTERNAL_EVENTS: return ActionGroup.INJECT_EXTERNAL_EVENTS; + case CREATE_STORAGE_POOL_NETWORK: + return ActionGroup.CREATE_STORAGE_POOL_NETWORK; + case DELETE_STORAGE_POOL_NETWORK: + return ActionGroup.DELETE_STORAGE_POOL_NETWORK; + case ASSIGN_CLUSTER_NETWORK: + return ActionGroup.ASSIGN_CLUSTER_NETWORK; default: return null; } -- To view, visit http://gerrit.ovirt.org/11824 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I9adfda37e67d24f96933aa4eb8f79a8fdb416d62 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Ravi Nori <rn...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches