package in.partake.controller.api.event; import in.partake.controller.api.APIControllerTest; import in.partake.resource.UserErrorCode; import org.junit.Test; import in.partake.controller.ActionProxy; public class RemoveAPITest extends APIControllerTest { @Test public void testToRemove() throws Exception { ActionProxy proxy = getActionProxy(POST, "/api/event/remove"); loginAs(proxy, EVENT_OWNER_ID); addParameter(proxy, "eventId", DEFAULT_EVENT_ID); addValidSessionTokenToParameter(proxy); proxy.execute(); assertResultOK(proxy); } @Test public void testToRemoveByEventEditor() throws Exception { ActionProxy proxy = getActionProxy(POST, "/api/event/remove"); loginAs(proxy, EVENT_EDITOR_ID); addParameter(proxy, "eventId", DEFAULT_EVENT_ID); addValidSessionTokenToParameter(proxy); proxy.execute(); assertResultForbidden(proxy); } @Test public void testToRemoveWithoutValidSessionToken() throws Exception { ActionProxy proxy = getActionProxy(POST, "/api/event/remove"); loginAs(proxy, EVENT_OWNER_ID); addParameter(proxy, "eventId", DEFAULT_EVENT_ID); proxy.execute(); assertResultInvalid(proxy, UserErrorCode.INVALID_SECURITY_CSRF); } @Test public void testToRemoveWithoutLogin() throws Exception { ActionProxy proxy = getActionProxy(POST, "/api/event/remove"); addParameter(proxy, "eventId", DEFAULT_EVENT_ID); proxy.execute(); assertResultLoginRequired(proxy); } @Test public void testToRemoveWithalidSessionToken() throws Exception { ActionProxy proxy = getActionProxy(POST, "/api/event/remove"); loginAs(proxy, EVENT_OWNER_ID); addParameter(proxy, "eventId", INVALID_EVENT_ID); addValidSessionTokenToParameter(proxy); proxy.execute(); assertResultInvalid(proxy, UserErrorCode.INVALID_EVENT_ID); } }