// test updateWorkflow deleted and version true/false @Test public void testUpdateWorkflowWithChangesToDeletedAndVersion() throws Exception { Authenticator auth = mock(Authenticator.class); HttpServletRequest request = mock(HttpServletRequest.class); WorkflowDAO workflowDAO = new WorkflowObjectifyDAOImpl(null); Workflow w = new Workflow(); w.setName("wf"); w = workflowDAO.insert(w); User u = new User(); u.setLogin("bob"); u.setPermissions(Permission.UPDATE_ALL_WORKFLOWS); when(auth.authenticate(request)).thenReturn(u); WorkflowRestService wrs = new WorkflowRestService(); wrs.setAuthenticator(auth); w = wrs.updateWorkflow(w.getId(), null, Boolean.TRUE, 2, request); assertTrue(w.getId() != null); assertTrue(w.isDeleted() == true); assertTrue(w.getVersion() == 2); w = wrs.updateWorkflow(w.getId(), null, Boolean.FALSE, 3, request); assertTrue(w.getId() != null); assertTrue(w.isDeleted() == false); assertTrue(w.getVersion() == 3); w = wrs.updateWorkflow(w.getId(), null, null, null, request); assertTrue(w.getId() != null); assertTrue(w.isDeleted() == false); assertTrue(w.getVersion() == 3); }
// test updateWorkflow resave non existant workflow @Test public void testUpdateWorkflowResaveNonExistantWorkflow() throws Exception { Authenticator auth = mock(Authenticator.class); HttpServletRequest request = mock(HttpServletRequest.class); User u = new User(); u.setLogin("bob"); u.setPermissions(Permission.UPDATE_ALL_WORKFLOWS); when(auth.authenticate(request)).thenReturn(u); WorkflowRestService wrs = new WorkflowRestService(); wrs.setAuthenticator(auth); try { wrs.updateWorkflow(1L, Boolean.TRUE, null, null, request); fail("Expected exception"); } catch (WebApplicationException ex) { assertTrue(ex.getMessage(), ex.getMessage().contains("There was an error resaving Workflow")); } }
// test updateWorkflow no permission @Test public void testUpdateWorkflowNoPermission() throws Exception { Authenticator auth = mock(Authenticator.class); HttpServletRequest request = mock(HttpServletRequest.class); User u = new User(); u.setLogin("bob"); u.setPermissions(Permission.NONE); when(auth.authenticate(request)).thenReturn(u); WorkflowRestService wrs = new WorkflowRestService(); wrs.setAuthenticator(auth); try { wrs.updateWorkflow(1L, null, null, null, request); fail("Expected exception"); } catch (WebApplicationException wae) { assertTrue( wae.getMessage(), wae.getResponse().getStatus() == HttpServletResponse.SC_UNAUTHORIZED); } }