List of usage examples for org.springframework.mock.web MockHttpServletRequest setParameter
public void setParameter(String name, String... values)
From source file:ltistarter.LTITests.java
@Test @Transactional//from w w w .j av a2 s. c om public void testLTIRequest() { assertNotNull(allRepositories); assertNotNull(ltiKeyRepository); assertNotNull(ltiContextRepository); assertNotNull(ltiLinkRepository); assertNotNull(ltiUserRepository); assertNotNull(ltiMembershipRepository); MockHttpServletRequest request; LTIRequest ltiRequest; LtiKeyEntity key1 = ltiKeyRepository.save(new LtiKeyEntity("AZkey", "AZsecret")); LtiKeyEntity key2 = ltiKeyRepository.save(new LtiKeyEntity("key", "secret")); LtiKeyEntity key3 = ltiKeyRepository.save(new LtiKeyEntity("3key", "secret")); LtiKeyEntity key4 = ltiKeyRepository.save(new LtiKeyEntity("4key", "secret")); LtiKeyEntity key5 = ltiKeyRepository.save(new LtiKeyEntity("5key", "secret")); LtiUserEntity user1 = ltiUserRepository.save(new LtiUserEntity("azeckoski", null)); LtiUserEntity user2 = ltiUserRepository.save(new LtiUserEntity("bzeckoski", null)); LtiUserEntity user3 = ltiUserRepository.save(new LtiUserEntity("czeckoski", null)); LtiUserEntity user4 = ltiUserRepository.save(new LtiUserEntity("dzeckoski", null)); LtiContextEntity context1 = ltiContextRepository .save(new LtiContextEntity("AZcontext", key1, "AZCtitle", null)); LtiContextEntity context2 = ltiContextRepository .save(new LtiContextEntity("3context", key3, "3Ctitle", null)); LtiContextEntity context3 = ltiContextRepository .save(new LtiContextEntity("5context", key5, "5Ctitle", null)); LtiLinkEntity link1 = ltiLinkRepository.save(new LtiLinkEntity("AZlink", context1, "linkTitle")); LtiMembershipEntity member1 = ltiMembershipRepository .save(new LtiMembershipEntity(context1, user1, LtiMembershipEntity.ROLE_STUDENT)); LtiMembershipEntity member2 = ltiMembershipRepository .save(new LtiMembershipEntity(context1, user2, LtiMembershipEntity.ROLE_STUDENT)); LtiMembershipEntity member3 = ltiMembershipRepository .save(new LtiMembershipEntity(context1, user3, LtiMembershipEntity.ROLE_INTRUCTOR)); LtiMembershipEntity member4 = ltiMembershipRepository .save(new LtiMembershipEntity(context2, user1, LtiMembershipEntity.ROLE_STUDENT)); LtiMembershipEntity member5 = ltiMembershipRepository .save(new LtiMembershipEntity(context2, user3, LtiMembershipEntity.ROLE_INTRUCTOR)); LtiServiceEntity service11 = ltiServiceRepository.save(new LtiServiceEntity("grading", key1, "format")); LtiServiceEntity service12 = ltiServiceRepository.save(new LtiServiceEntity("tracking", key1, "format")); request = new MockHttpServletRequest(); // NOT LTI request try { ltiRequest = new LTIRequest(request); fail("Should have died"); } catch (IllegalStateException e) { assertNotNull(e.getMessage()); } request = new MockHttpServletRequest(); // LTI request (minimal) request.setParameter(LTIRequest.LTI_VERSION, LTIRequest.LTI_VERSION_1P0); request.setParameter(LTIRequest.LTI_MESSAGE_TYPE, LTIRequest.LTI_MESSAGE_TYPE_BASIC); request.setParameter(LTIRequest.LTI_CONSUMER_KEY, key1.getKeyKey()); ltiRequest = new LTIRequest(request); assertFalse(ltiRequest.isComplete()); assertNotNull(ltiRequest.getLtiVersion()); assertNotNull(ltiRequest.getLtiMessageType()); assertNotNull(ltiRequest.getLtiConsumerKey()); assertNull(ltiRequest.getKey()); // not loaded yet boolean loaded = ltiRequest.loadLTIDataFromDB(allRepositories); // load up the data assertTrue(loaded); assertNotNull(ltiRequest.getKey()); assertEquals(key1, ltiRequest.getKey()); request = new MockHttpServletRequest(); // LTI request (full) request.setParameter(LTIRequest.LTI_VERSION, LTIRequest.LTI_VERSION_1P0); request.setParameter(LTIRequest.LTI_MESSAGE_TYPE, LTIRequest.LTI_MESSAGE_TYPE_BASIC); request.setParameter(LTIRequest.LTI_CONSUMER_KEY, key1.getKeyKey()); request.setParameter(LTIRequest.LTI_CONTEXT_ID, context1.getContextKey()); request.setParameter(LTIRequest.LTI_LINK_ID, link1.getLinkKey()); request.setParameter(LTIRequest.LTI_USER_ID, user1.getUserKey()); ltiRequest = new LTIRequest(request, allRepositories, false); assertTrue(ltiRequest.isLoaded()); assertTrue(ltiRequest.isComplete()); assertNotNull(ltiRequest.getLtiVersion()); assertNotNull(ltiRequest.getLtiMessageType()); assertNotNull(ltiRequest.getLtiConsumerKey()); assertNotNull(ltiRequest.getKey()); assertEquals(key1, ltiRequest.getKey()); assertNotNull(ltiRequest.getContext()); assertNotNull(ltiRequest.getLink()); assertNotNull(ltiRequest.getLtiUserId()); assertNotNull(ltiRequest.getMembership()); assertNull(ltiRequest.getService()); assertNull(ltiRequest.getResult()); request = new MockHttpServletRequest(); // LTI request (gaps) request.setParameter(LTIRequest.LTI_VERSION, LTIRequest.LTI_VERSION_1P0); request.setParameter(LTIRequest.LTI_MESSAGE_TYPE, LTIRequest.LTI_MESSAGE_TYPE_BASIC); request.setParameter(LTIRequest.LTI_CONSUMER_KEY, key1.getKeyKey()); request.setParameter(LTIRequest.LTI_CONTEXT_ID, context1.getContextKey()); request.setParameter(LTIRequest.LTI_LINK_ID, "invalid_link"); request.setParameter(LTIRequest.LTI_USER_ID, user1.getUserKey()); request.setParameter(LTIRequest.LTI_SOURCEDID, "invalid_sourcedid"); request.setParameter(LTIRequest.LTI_SERVICE, service11.getServiceKey()); ltiRequest = new LTIRequest(request, allRepositories, false); assertTrue(ltiRequest.isLoaded()); assertFalse(ltiRequest.isComplete()); // missing the link assertFalse(ltiRequest.isUpdated()); assertNotNull(ltiRequest.getLtiVersion()); assertNotNull(ltiRequest.getLtiMessageType()); assertNotNull(ltiRequest.getLtiConsumerKey()); assertNotNull(ltiRequest.getKey()); assertNotNull(ltiRequest.getContext()); assertNull(ltiRequest.getLink()); assertNotNull(ltiRequest.getLtiUserId()); assertNotNull(ltiRequest.getMembership()); assertNull(ltiRequest.getResult()); assertNotNull(ltiRequest.getService()); // testing updating existing data request = new MockHttpServletRequest(); // LTI request (gaps) request.setParameter(LTIRequest.LTI_VERSION, LTIRequest.LTI_VERSION_1P0); request.setParameter(LTIRequest.LTI_MESSAGE_TYPE, LTIRequest.LTI_MESSAGE_TYPE_BASIC); request.setParameter(LTIRequest.LTI_CONSUMER_KEY, key1.getKeyKey()); request.setParameter(LTIRequest.LTI_CONTEXT_ID, context1.getContextKey()); request.setParameter(LTIRequest.LTI_CONTEXT_TITLE, "AZ context 1"); request.setParameter(LTIRequest.LTI_LINK_ID, link1.getLinkKey()); request.setParameter(LTIRequest.LTI_LINK_TITLE, "AZ link 1"); request.setParameter(LTIRequest.LTI_USER_ID, user1.getUserKey()); request.setParameter(LTIRequest.LTI_USER_NAME_FULL, "Aaron Zeckoski"); request.setParameter(LTIRequest.LTI_USER_EMAIL, "azeckoski@fake.email.com"); request.setParameter(LTIRequest.LTI_USER_ROLES, "Administrator,Instructor,Learner"); request.setParameter(LTIRequest.LTI_SOURCEDID, "new_sourcedid_AZ"); request.setParameter(LTIRequest.LTI_SERVICE, service11.getServiceKey()); ltiRequest = new LTIRequest(request, allRepositories, true); assertTrue(ltiRequest.isLoaded()); assertTrue(ltiRequest.isComplete()); assertTrue(ltiRequest.isUpdated()); assertEquals(2, ltiRequest.getUserRoleNumber()); assertNotNull(ltiRequest.getLtiVersion()); assertNotNull(ltiRequest.getLtiMessageType()); assertNotNull(ltiRequest.getLtiConsumerKey()); assertNotNull(ltiRequest.getKey()); assertNotNull(ltiRequest.getContext()); assertNotNull(ltiRequest.getLink()); assertNotNull(ltiRequest.getUser()); assertNotNull(ltiRequest.getMembership()); assertNotNull(ltiRequest.getResult()); assertNotNull(ltiRequest.getService()); // testing inserting all new data (except key of course) request = new MockHttpServletRequest(); // LTI request (gaps) request.setParameter(LTIRequest.LTI_VERSION, LTIRequest.LTI_VERSION_1P0); request.setParameter(LTIRequest.LTI_MESSAGE_TYPE, LTIRequest.LTI_MESSAGE_TYPE_BASIC); request.setParameter(LTIRequest.LTI_CONSUMER_KEY, key5.getKeyKey()); request.setParameter(LTIRequest.LTI_CONTEXT_ID, "context 5555"); request.setParameter(LTIRequest.LTI_CONTEXT_TITLE, "AZ context 5555"); request.setParameter(LTIRequest.LTI_LINK_ID, "link 5555"); request.setParameter(LTIRequest.LTI_LINK_TITLE, "AZ link 5555"); request.setParameter(LTIRequest.LTI_USER_ID, "rzeckoski"); request.setParameter(LTIRequest.LTI_USER_NAME_FULL, "Rebecca Zeckoski"); request.setParameter(LTIRequest.LTI_USER_EMAIL, "rzeckoski@fake.email.com"); request.setParameter(LTIRequest.LTI_USER_ROLES, "Mentor/Advisor,Instructor/GuestInstructor,TeachingAssistant/TeachingAssistant"); request.setParameter(LTIRequest.LTI_SOURCEDID, "RZ_new_sourcedid"); request.setParameter(LTIRequest.LTI_SERVICE, "RZ_grading"); ltiRequest = new LTIRequest(request, allRepositories, true); assertTrue(ltiRequest.isLoaded()); assertTrue(ltiRequest.isComplete()); assertTrue(ltiRequest.isUpdated()); assertNotNull(ltiRequest.getLtiVersion()); assertNotNull(ltiRequest.getLtiMessageType()); assertNotNull(ltiRequest.getLtiConsumerKey()); assertNotNull(ltiRequest.getKey()); assertNotNull(ltiRequest.getContext()); assertNotNull(ltiRequest.getLink()); assertNotNull(ltiRequest.getUser()); assertNotNull(ltiRequest.getMembership()); assertNotNull(ltiRequest.getResult()); assertNotNull(ltiRequest.getService()); }
From source file:fr.paris.lutece.portal.web.user.AdminUserJspBeanTest.java
public void testDoModifyAdminUserSuccess() throws AccessDeniedException, UserNotSignedException { AdminUser userToModify = getUserToModify(); try {//from w w w . j a v a 2 s. c o m AdminUserJspBean bean = new AdminUserJspBean(); MockHttpServletRequest request = new MockHttpServletRequest(); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); final String modifiedName = userToModify.getAccessCode() + "_mod"; request.addParameter("access_code", modifiedName); request.addParameter("last_name", modifiedName); request.addParameter("first_name", modifiedName); request.addParameter("email", userToModify.getEmail()); request.addParameter("status", Integer.toString(AdminUser.NOT_ACTIVE_CODE)); request.addParameter("language", Locale.KOREA.toString()); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); AdminMessage message = AdminMessageService.getMessage(request); assertNull(message); AdminUser stored = AdminUserHome.findByPrimaryKey(userToModify.getUserId()); assertNotNull(stored); assertEquals(modifiedName, stored.getAccessCode()); assertEquals(modifiedName, stored.getFirstName()); assertEquals(modifiedName, stored.getLastName()); assertEquals(AdminUser.NOT_ACTIVE_CODE, stored.getStatus()); assertEquals(Locale.KOREA.toString().toLowerCase(), stored.getLocale().toString().toLowerCase()); } finally { disposeOfUser(userToModify); } }
From source file:fr.paris.lutece.portal.web.user.AdminUserJspBeanTest.java
public void testDoModifyAdminUserInvalidToken() throws AccessDeniedException, UserNotSignedException { AdminUser userToModify = getUserToModify(); try {/*from w w w .j a v a2 s .c o m*/ AdminUserJspBean bean = new AdminUserJspBean(); MockHttpServletRequest request = new MockHttpServletRequest(); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); final String modifiedName = userToModify.getAccessCode() + "_mod"; request.addParameter("access_code", modifiedName); request.addParameter("last_name", modifiedName); request.addParameter("first_name", modifiedName); request.addParameter("email", userToModify.getEmail()); request.addParameter("status", Integer.toString(AdminUser.NOT_ACTIVE_CODE)); request.addParameter("language", Locale.KOREA.toString()); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp") + "b"); bean.doModifyAdminUser(request); fail("Should have thrown "); } catch (AccessDeniedException e) { AdminUser stored = AdminUserHome.findByPrimaryKey(userToModify.getUserId()); assertNotNull(stored); assertEquals(userToModify.getAccessCode(), stored.getAccessCode()); assertEquals(userToModify.getFirstName(), stored.getFirstName()); assertEquals(userToModify.getLastName(), stored.getLastName()); assertEquals(AdminUser.ACTIVE_CODE, stored.getStatus()); assertEquals(LocaleService.getDefault(), stored.getLocale()); } finally { disposeOfUser(userToModify); } }
From source file:fr.paris.lutece.portal.web.user.AdminUserJspBeanTest.java
public void testDoModifyAdminUser() throws AccessDeniedException, UserNotSignedException { AdminUser userToModify = getUserToModify(); try {/* w ww .ja v a 2 s . co m*/ AdminUserJspBean bean = new AdminUserJspBean(); MockHttpServletRequest request = new MockHttpServletRequest(); request.getSession(true).setAttribute("lutece_admin_user", getLevel1AdminUserWithCORE_USERS_MANAGEMENTRight()); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); try { bean.doModifyAdminUser(request); fail("Should not be able to modify a user with a lower level"); } catch (AccessDeniedException e) { } request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); AdminMessage message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString(Messages.MANDATORY_FIELDS, Locale.FRENCH), message.getText(Locale.FRENCH)); final String modifiedName = userToModify.getAccessCode() + "_mod"; request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.addParameter("access_code", modifiedName); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString(Messages.MANDATORY_FIELDS, Locale.FRENCH), message.getText(Locale.FRENCH)); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.addParameter("access_code", modifiedName); request.addParameter("last_name", modifiedName); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString(Messages.MANDATORY_FIELDS, Locale.FRENCH), message.getText(Locale.FRENCH)); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.addParameter("access_code", modifiedName); request.addParameter("last_name", modifiedName); request.addParameter("first_name", modifiedName); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString(Messages.MANDATORY_FIELDS, Locale.FRENCH), message.getText(Locale.FRENCH)); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.addParameter("access_code", modifiedName); request.addParameter("last_name", modifiedName); request.addParameter("first_name", modifiedName); request.addParameter("email", " "); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString(Messages.MANDATORY_FIELDS, Locale.FRENCH), message.getText(Locale.FRENCH)); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.addParameter("access_code", "admin"); request.addParameter("last_name", modifiedName); request.addParameter("first_name", modifiedName); request.addParameter("email", modifiedName + "@lutece.fr"); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString("portal.users.message.user.accessCodeAlreadyUsed", Locale.FRENCH), message.getText(Locale.FRENCH)); request = new MockHttpServletRequest(); AdminAuthenticationService.getInstance().registerUser(request, AdminUserHome.findUserByLogin("admin")); request.addParameter("id_user", Integer.toString(userToModify.getUserId())); request.addParameter("access_code", modifiedName); request.addParameter("last_name", modifiedName); request.addParameter("first_name", modifiedName); request.addParameter("email", "admin@lutece.fr"); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/ModifyUser.jsp")); bean.doModifyAdminUser(request); message = AdminMessageService.getMessage(request); assertNotNull(message); assertEquals(I18nService.getLocalizedString("portal.users.message.user.accessEmailUsed", Locale.FRENCH), message.getText(Locale.FRENCH)); } finally { disposeOfUser(userToModify); } }
From source file:fr.paris.lutece.portal.web.user.AdminUserJspBeanTest.java
public void testDoCreateAdminUserInvalidToken() throws PasswordResetException, AccessDeniedException, UserNotSignedException { AdminUserJspBean bean = new AdminUserJspBean(); MockHttpServletRequest request = new MockHttpServletRequest(); String randomUserName = "User_" + new SecureRandom().nextLong(); try {/*from w w w . j a v a 2 s. c o m*/ request.addParameter("access_code", randomUserName); request.addParameter("last_name", randomUserName); request.addParameter("first_name", randomUserName); request.addParameter("email", randomUserName + "@lutece.fr"); request.addParameter("user_level", "0"); request.addParameter("first_password", randomUserName); request.addParameter("second_password", randomUserName); request.addParameter("status", Integer.toString(AdminUser.ACTIVE_CODE)); // NPE if absent request.addParameter("language", "fr"); // NPE if absent request.getSession(true).setAttribute("lutece_admin_user", getLevel0AdminUserWithCORE_USERS_MANAGEMENTRight()); request.setParameter(SecurityTokenService.PARAMETER_TOKEN, SecurityTokenService.getInstance().getToken(request, "jsp/admin/user/CreateUser.jsp") + "b"); bean.init(request, "CORE_USERS_MANAGEMENT"); bean.doCreateAdminUser(request); fail("Should have thrown"); } catch (AccessDeniedException e) { AdminMessage message = AdminMessageService.getMessage(request); assertNull(message); AdminUser createdUser = AdminUserHome.findUserByLogin(randomUserName); assertNull(createdUser); } finally { AdminUser user = AdminUserHome.findUserByLogin(randomUserName); if (user != null) { AdminUserHome.remove(user.getUserId()); } } }
From source file:org.openmrs.module.htmlformentry.WorkflowStateTagTest.java
@Test public void shouldNotEnrollInProgramOnEditIfPatientAlreadyEnrolledInProgram() throws Exception { // create a program enrollment for test patient PatientProgram patientProgram = new PatientProgram(); patientProgram.setPatient(patient);/* w ww . ja va 2s. c o m*/ patientProgram.setProgram(Context.getProgramWorkflowService().getProgram(10)); patientProgram.setDateEnrolled(PAST_DATE); Context.getProgramWorkflowService().savePatientProgram(patientProgram); new RegressionTestHelper() { @Override public String getFormName() { return XML_FORM_NAME; } @Override public String[] widgetLabels() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } @Override public void setupRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.addParameter(widgets.get("Location:"), "2"); request.addParameter(widgets.get("Provider:"), "502"); // on first submit, don't submit any state request.addParameter(widgets.get("Date:"), dateAsString(DATE)); request.addParameter(widgets.get("State:"), ""); } @Override public void testResults(SubmissionResults results) { results.assertNoErrors(); // sanity check Assert.assertEquals(1, Context.getProgramWorkflowService().getPatientPrograms(patient, Context.getProgramWorkflowService().getProgram(10), null, null, null, null, false) .size()); // sanity check: program should not yet be in the start state ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); Assert.assertNull(patientProgram); } public boolean doEditEncounter() { return true; } public String[] widgetLabelsForEdit() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } public void setupEditRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.setParameter(widgets.get("Location:"), "2"); request.setParameter(widgets.get("Provider:"), "502"); request.setParameter(widgets.get("Date:"), dateAsString(DATE)); request.setParameter(widgets.get("State:"), START_STATE); } public void testEditedResults(SubmissionResults results) { results.assertNoErrors(); Assert.assertEquals(1, Context.getProgramWorkflowService().getPatientPrograms(patient, Context.getProgramWorkflowService().getProgram(10), null, null, null, null, false) .size()); // double check that state has been set ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientProgram.getDateEnrolled())); } }.run(); }
From source file:org.openmrs.module.htmlformentry.WorkflowStateTagTest.java
@Test public void shouldAllowToEditStateWithSameDate() throws Exception { new RegressionTestHelper() { @Override/* ww w .jav a2s. c o m*/ public String getFormName() { return XML_FORM_NAME; } @Override public String[] widgetLabels() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } @Override public void setupRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.addParameter(widgets.get("Location:"), "2"); request.addParameter(widgets.get("Provider:"), "502"); request.addParameter(widgets.get("Date:"), dateAsString(DATE)); request.addParameter(widgets.get("State:"), START_STATE); } @Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); results.assertProvider(502); results.assertLocation(2); ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); } public boolean doViewEncounter() { return true; } public void testViewingEncounter(Encounter encounter, String html) { Assert.assertTrue("View should contain current state: " + html, html.contains("START STATE")); } public boolean doEditEncounter() { return true; } public String[] widgetLabelsForEdit() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } public void setupEditRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.setParameter(widgets.get("Location:"), "2"); request.setParameter(widgets.get("Provider:"), "502"); request.setParameter(widgets.get("Date:"), dateAsString(DATE)); request.setParameter(widgets.get("State:"), MIDDLE_STATE); } public void testEditedResults(SubmissionResults results) { results.assertNoErrors(); ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(MIDDLE_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); // assert that the other state no longer exists state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); patientState = getPatientState(patientProgram, state, DATE); Assert.assertNull(patientState); } }.run(); }
From source file:org.openmrs.module.htmlformentry.WorkflowStateTagTest.java
@Test public void shouldMoveProgramEnrollmentAndProgramStateStartEarlier() throws Exception { new RegressionTestHelper() { @Override/*from w w w. j ava 2s . c om*/ public String getFormName() { return XML_FORM_NAME; } @Override public String[] widgetLabels() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } @Override public void setupRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.addParameter(widgets.get("Location:"), "2"); request.addParameter(widgets.get("Provider:"), "502"); request.addParameter(widgets.get("Date:"), dateAsString(DATE)); request.addParameter(widgets.get("State:"), START_STATE); } @Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); results.assertProvider(502); results.assertLocation(2); ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); } public boolean doViewEncounter() { return true; } public void testViewingEncounter(Encounter encounter, String html) { Assert.assertTrue("View should contain current state: " + html, html.contains("START STATE")); } public boolean doEditEncounter() { return true; } public String[] widgetLabelsForEdit() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } public void setupEditRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.setParameter(widgets.get("Location:"), "2"); request.setParameter(widgets.get("Provider:"), "502"); request.setParameter(widgets.get("Date:"), dateAsString(PAST_DATE)); request.setParameter(widgets.get("State:"), MIDDLE_STATE); } public void testEditedResults(SubmissionResults results) { ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(MIDDLE_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); // assert that the start dates of the program and state have been moved Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientProgram.getDateEnrolled())); Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); // assert that the other state no longer exists state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); patientState = getPatientState(patientProgram, state, DATE); Assert.assertNull(patientState); } }.run(); }
From source file:org.openmrs.module.htmlformentry.WorkflowStateTagTest.java
@Test public void shouldMoveProgramStateStartLater() throws Exception { new RegressionTestHelper() { @Override//from ww w .j a v a2 s . co m public String getFormName() { return XML_FORM_NAME; } @Override public String[] widgetLabels() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } @Override public void setupRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.addParameter(widgets.get("Location:"), "2"); request.addParameter(widgets.get("Provider:"), "502"); request.addParameter(widgets.get("Date:"), dateAsString(PAST_DATE)); request.addParameter(widgets.get("State:"), START_STATE); } @Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); results.assertProvider(502); results.assertLocation(2); ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, PAST_DATE); PatientState patientState = getPatientState(patientProgram, state, PAST_DATE); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); } public boolean doViewEncounter() { return true; } public void testViewingEncounter(Encounter encounter, String html) { Assert.assertTrue("View should contain current state: " + html, html.contains("START STATE")); } public boolean doEditEncounter() { return true; } public String[] widgetLabelsForEdit() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } public void setupEditRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.setParameter(widgets.get("Location:"), "2"); request.setParameter(widgets.get("Provider:"), "502"); request.setParameter(widgets.get("Date:"), dateAsString(DATE)); request.setParameter(widgets.get("State:"), MIDDLE_STATE); } public void testEditedResults(SubmissionResults results) { results.assertNoErrors(); ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(MIDDLE_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); // assert that the start date of the program is the same Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientProgram.getDateEnrolled())); // assert that the start date of the state has moved Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); // assert that the other state no longer exists state = Context.getProgramWorkflowService().getStateByUuid(START_STATE); patientState = getPatientState(patientProgram, state, DATE); Assert.assertNull(patientState); } }.run(); }
From source file:org.openmrs.module.htmlformentry.WorkflowStateTagTest.java
@Test public void shouldEndExistingStatesAsNeededWhenShiftingStateEarlier() throws Exception { transitionToState(START_STATE, FURTHER_PAST_DATE); new RegressionTestHelper() { @Override/*from w w w . j a v a 2s . c o m*/ public String getFormName() { return XML_FORM_NAME; } @Override public String[] widgetLabels() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } @Override public void setupRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.addParameter(widgets.get("Location:"), "2"); request.addParameter(widgets.get("Provider:"), "502"); request.addParameter(widgets.get("Date:"), dateAsString(DATE)); request.addParameter(widgets.get("State:"), END_STATE); } @Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); results.assertProvider(502); results.assertLocation(2); // do a sanity check here ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(END_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), state, DATE); PatientState patientState = getPatientState(patientProgram, state, DATE); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); } public boolean doViewEncounter() { return true; } public void testViewingEncounter(Encounter encounter, String html) { Assert.assertTrue("View should contain current state: " + html, html.contains("END STATE")); } public boolean doEditEncounter() { return true; } public String[] widgetLabelsForEdit() { return new String[] { "Date:", "Location:", "Provider:", "State:" }; } public void setupEditRequest(MockHttpServletRequest request, Map<String, String> widgets) { request.setParameter(widgets.get("Location:"), "2"); request.setParameter(widgets.get("Provider:"), "502"); request.setParameter(widgets.get("Date:"), dateAsString(PAST_DATE)); request.setParameter(widgets.get("State:"), MIDDLE_STATE); } public void testEditedResults(SubmissionResults results) { results.assertNoErrors(); ProgramWorkflowState startState = Context.getProgramWorkflowService().getStateByUuid(START_STATE); ProgramWorkflowState middleState = Context.getProgramWorkflowService().getStateByUuid(MIDDLE_STATE); PatientProgram patientProgram = getPatientProgramByState(results.getPatient(), startState, FURTHER_PAST_DATE); Assert.assertNotNull(patientProgram); // assert that the patient program only has two states Assert.assertEquals(2, patientProgram.getStates().size()); // verify that the start state now ends on PAST_DATE PatientState patientState = getPatientState(patientProgram, startState, FURTHER_PAST_DATE); Assert.assertNotNull(patientState); Assert.assertEquals(dateAsString(FURTHER_PAST_DATE), dateAsString(patientState.getStartDate())); Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientState.getEndDate())); // verify that the middle state starts on PAST_DATE and has no current end date patientState = getPatientState(patientProgram, middleState, PAST_DATE); Assert.assertNotNull(patientState); Assert.assertEquals(dateAsString(PAST_DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); } }.run(); }