@Override protected ProgramWorkflowState getExistingObject() { return programWorkflowService.getStateByUuid(EXISTING_UUID); } }
@Override protected ProgramWorkflowState getObjectByUuid(String uuid) { return Context.getProgramWorkflowService().getStateByUuid(uuid); } }
/** * @see ProgramWorkflowService#getStateByUuid(String) */ @Test public void getStateByUuid_shouldReturnNullIfNoObjectFoundWithGivenUuid() { Assert.assertNull(Context.getProgramWorkflowService().getStateByUuid("some invalid uuid")); }
/** * @see ProgramWorkflowService#getStateByUuid(String) */ @Test public void getStateByUuid_shouldFindObjectGivenValidUuid() { String uuid = "92584cdc-6a20-4c84-a659-e035e45d36b0"; ProgramWorkflowState state = Context.getProgramWorkflowService().getStateByUuid(uuid); Assert.assertEquals(1, (int) state.getProgramWorkflowStateId()); }
/** * @see PatientProgramValidator#validate(Object,Errors) */ @Test public void validate_shouldFailIfAPatientStateHasAnInvalidWorkFlowState() { executeDataSet("org/openmrs/api/include/ProgramWorkflowServiceTest-otherProgramWorkflows.xml"); PatientProgram program = Context.getProgramWorkflowService().getPatientProgram(1); PatientState patientState = program.getStates().iterator().next(); patientState.setState(Context.getProgramWorkflowService().getStateByUuid("31c82d66-245c-11e1-9cf0-00248140a5eb")); BindException errors = new BindException(program, ""); new PatientProgramValidator().validate(program, errors); Assert.assertTrue(errors.hasFieldErrors("states")); }
@Override public ProgramWorkflowState getByUniqueId(String uuid) { return Context.getProgramWorkflowService().getStateByUuid(uuid); }
@Override public ProgramWorkflowState newObject() { return Context.getProgramWorkflowService().getStateByUuid(getUuidProperty()); }
@Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); List<PatientProgram> pps = pws.getPatientPrograms(ps.getPatient(patientId), pws.getProgram(programId), null, null, null, null, false); Assert.assertEquals(1, pps.size()); // make sure the state has been set Set<PatientState> states = pps.get(0).getStates(); Assert.assertEquals(1, states.size()); Assert.assertTrue(((PatientState) states.toArray()[0]).getState().equals(Context.getProgramWorkflowService().getStateByUuid("6de7ed10-53ad-11e1-8cb6-00248140a5eb"))); };
@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 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();
private void enrollInProgram(String state, Date date) { ProgramWorkflowState workflowState = Context.getProgramWorkflowService().getStateByUuid(state); PatientProgram patientProgram = getPatientProgramByWorkflow(patient, workflowState.getProgramWorkflow(), date); if (patientProgram == null) { patientProgram = new PatientProgram(); patientProgram.setPatient(patient); patientProgram.setProgram(workflowState.getProgramWorkflow().getProgram()); patientProgram.setDateEnrolled(date); } Context.getProgramWorkflowService().savePatientProgram(patientProgram); }
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();
private void transitionToState(String state, Date date) { ProgramWorkflowState workflowState = Context.getProgramWorkflowService().getStateByUuid(state); PatientProgram patientProgram = getPatientProgramByWorkflow(patient, workflowState.getProgramWorkflow(), date); if (patientProgram == null) { patientProgram = new PatientProgram(); patientProgram.setPatient(patient); patientProgram.setProgram(workflowState.getProgramWorkflow().getProgram()); patientProgram.setDateEnrolled(date); } patientProgram.transitionToState(workflowState, date); Context.getProgramWorkflowService().savePatientProgram(patientProgram); }
@Override public void testResults(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();
@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, null); PatientState patientState = getPatientState(patientProgram, state, null); Assert.assertNotNull(patientProgram); Assert.assertEquals(dateAsString(DATE), dateAsString(patientState.getStartDate())); Assert.assertNull(patientState.getEndDate()); }
@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()); }
@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()); }
@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()); }
@Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); results.assertProvider(502); results.assertLocation(2); //Then: No action 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()); }
@Override public void testResults(SubmissionResults results) { results.assertNoErrors(); results.assertEncounterCreated(); results.assertProvider(502); results.assertLocation(2); // patient should now be in the middle state 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()); }