[1240] | 1 | package gov.va.med.edp.pt.demog.model {
|
---|
| 2 |
|
---|
| 3 | import gov.va.med.edp.pt.demog.model.TestPatientCheckVO;
|
---|
| 4 | import gov.va.med.edp.pt.demog.model.PatientCheckVO;
|
---|
| 5 |
|
---|
| 6 | import flexunit.framework.TestCase;
|
---|
| 7 |
|
---|
| 8 | public class TestPatientChecksModel extends TestCase {
|
---|
| 9 |
|
---|
| 10 | private var m:PatientChecksModel = new PatientChecksModel();
|
---|
| 11 |
|
---|
| 12 | public override function setUp():void {
|
---|
| 13 | // this setup simulates patient checks
|
---|
| 14 | m = new PatientChecksModel();
|
---|
| 15 | m.checkState = PatientChecksModel.STATE_LOADING; // simulate loading
|
---|
| 16 |
|
---|
| 17 | m.patientChecks = new PatientCheckVO();
|
---|
| 18 | m.patientChecks.dfn = "foobar";
|
---|
| 19 | }
|
---|
| 20 |
|
---|
| 21 | public function testCreate():void {
|
---|
| 22 | m = new PatientChecksModel();
|
---|
| 23 | assertEquals(PatientChecksModel.STATE_NONE, m.checkState);
|
---|
| 24 | assertNull(m.patientChecks);
|
---|
| 25 | assertFalse(m.patientChecksReady);
|
---|
| 26 | assertFalse(m.continueEnabled);
|
---|
| 27 | assertFalse(m.backEnabled);
|
---|
| 28 | }
|
---|
| 29 |
|
---|
| 30 | public function testReset():void {
|
---|
| 31 | m.reset();
|
---|
| 32 | assertNull(m.patientChecks);
|
---|
| 33 | assertFalse(m.patientChecksReady);
|
---|
| 34 | assertFalse(m.continueEnabled);
|
---|
| 35 | assertFalse(m.backEnabled);
|
---|
| 36 | }
|
---|
| 37 |
|
---|
| 38 | public function testAlreadyOnBoardCheck():void {
|
---|
| 39 | m.patientChecks.onBoardText = "FOO,BAR";
|
---|
| 40 | m.patientChecksReady = true;
|
---|
| 41 |
|
---|
| 42 | assertEquals(PatientChecksModel.STATE_LOADED, m.checkState);
|
---|
| 43 | assertTrue(m.continueEnabled);
|
---|
| 44 | assertFalse(m.backEnabled);
|
---|
| 45 |
|
---|
| 46 | m.forward();
|
---|
| 47 |
|
---|
| 48 | assertEquals(PatientChecksModel.STATE_ONBOARD, m.checkState);
|
---|
| 49 | assertFalse(m.continueEnabled);
|
---|
| 50 | assertTrue(m.backEnabled);
|
---|
| 51 |
|
---|
| 52 | m.back();
|
---|
| 53 |
|
---|
| 54 | assertEquals(PatientChecksModel.STATE_LOADED, m.checkState);
|
---|
| 55 | assertTrue(m.continueEnabled);
|
---|
| 56 | assertFalse(m.backEnabled);
|
---|
| 57 | }
|
---|
| 58 |
|
---|
| 59 | public function testCycleThroughSimilarNamesSensitiveDeceasedAndFlagsPatientChecks():void {
|
---|
| 60 | m.patientChecks.similarNames = TestPatientCheckVO.createPtList();
|
---|
| 61 | m.patientChecks.deceasedText = "This patient died on Jan 24, 2007.\nDo you wish to continue?";
|
---|
| 62 | m.patientChecks.flags = TestPatientCheckVO.createPtFlags();
|
---|
| 63 | m.patientChecksReady = true;
|
---|
| 64 |
|
---|
| 65 | assertEquals(PatientChecksModel.STATE_LOADED, m.checkState);
|
---|
| 66 | assertTrue(m.continueEnabled);
|
---|
| 67 | assertFalse(m.backEnabled);
|
---|
| 68 |
|
---|
| 69 | m.forward();
|
---|
| 70 |
|
---|
| 71 | assertEquals(PatientChecksModel.STATE_SIMILAR, m.checkState);
|
---|
| 72 | assertTrue(m.continueEnabled);
|
---|
| 73 | assertTrue(m.backEnabled);
|
---|
| 74 |
|
---|
| 75 | m.forward();
|
---|
| 76 |
|
---|
| 77 | assertEquals(PatientChecksModel.STATE_DECEASED, m.checkState);
|
---|
| 78 | assertTrue(m.continueEnabled);
|
---|
| 79 | assertTrue(m.backEnabled);
|
---|
| 80 |
|
---|
| 81 | m.forward();
|
---|
| 82 |
|
---|
| 83 | assertEquals(PatientChecksModel.STATE_FLAGS, m.checkState);
|
---|
| 84 | assertTrue(m.continueEnabled);
|
---|
| 85 | assertTrue(m.backEnabled);
|
---|
| 86 |
|
---|
| 87 | m.back();
|
---|
| 88 |
|
---|
| 89 | assertEquals(PatientChecksModel.STATE_DECEASED, m.checkState);
|
---|
| 90 | assertTrue(m.continueEnabled);
|
---|
| 91 | assertTrue(m.backEnabled);
|
---|
| 92 |
|
---|
| 93 | m.back();
|
---|
| 94 |
|
---|
| 95 | assertEquals(PatientChecksModel.STATE_SIMILAR, m.checkState);
|
---|
| 96 | assertTrue(m.continueEnabled);
|
---|
| 97 | assertTrue(m.backEnabled);
|
---|
| 98 |
|
---|
| 99 | m.back();
|
---|
| 100 |
|
---|
| 101 | assertEquals(PatientChecksModel.STATE_LOADED, m.checkState);
|
---|
| 102 | assertTrue(m.continueEnabled);
|
---|
| 103 | assertFalse(m.backEnabled);
|
---|
| 104 |
|
---|
| 105 | m.forward();
|
---|
| 106 | m.forward();
|
---|
| 107 | m.forward();
|
---|
| 108 |
|
---|
| 109 | m.forward();
|
---|
| 110 |
|
---|
| 111 | assertEquals(PatientChecksModel.STATE_ALLOW, m.checkState);
|
---|
| 112 | assertFalse(m.continueEnabled);
|
---|
| 113 | assertFalse(m.backEnabled);
|
---|
| 114 | }
|
---|
| 115 |
|
---|
| 116 | public function testMayAccessSensitivePatient():void {
|
---|
| 117 | m.patientChecks.sensitive = true;
|
---|
| 118 | m.patientChecks.warningText = "unable to access this patient";
|
---|
| 119 | m.patientChecks.mayAccess = false;
|
---|
| 120 | m.patientChecksReady = true;
|
---|
| 121 |
|
---|
| 122 | assertEquals(PatientChecksModel.STATE_LOADED, m.checkState);
|
---|
| 123 | assertTrue(m.continueEnabled);
|
---|
| 124 | assertFalse(m.backEnabled);
|
---|
| 125 |
|
---|
| 126 | m.forward();
|
---|
| 127 |
|
---|
| 128 | assertEquals(PatientChecksModel.STATE_SENSITIVE, m.checkState);
|
---|
| 129 | assertFalse(m.continueEnabled);
|
---|
| 130 | assertTrue(m.backEnabled);
|
---|
| 131 |
|
---|
| 132 | m.back();
|
---|
| 133 |
|
---|
| 134 | assertEquals(PatientChecksModel.STATE_LOADED, m.checkState);
|
---|
| 135 | assertTrue(m.continueEnabled);
|
---|
| 136 | assertFalse(m.backEnabled);
|
---|
| 137 | }
|
---|
| 138 | }
|
---|
| 139 | }
|
---|