1
+ package org .openelisglobal .referral ;
2
+
3
+ import static org .junit .Assert .assertEquals ;
4
+ import static org .junit .Assert .assertFalse ;
5
+ import static org .junit .Assert .assertNotNull ;
6
+
7
+ import java .sql .Timestamp ;
8
+ import java .util .Arrays ;
9
+ import java .util .List ;
10
+ import java .util .UUID ;
11
+ import org .junit .Assert ;
12
+ import org .junit .Before ;
13
+ import org .junit .Test ;
14
+ import org .openelisglobal .BaseWebContextSensitiveTest ;
15
+ import org .openelisglobal .referral .action .beanitems .ReferralDisplayItem ;
16
+ import org .openelisglobal .referral .form .ReferredOutTestsForm ;
17
+ import org .openelisglobal .referral .form .ReferredOutTestsForm .ReferDateType ;
18
+ import org .openelisglobal .referral .service .ReferralService ;
19
+ import org .openelisglobal .referral .valueholder .Referral ;
20
+ import org .springframework .beans .factory .annotation .Autowired ;
21
+ import org .springframework .transaction .annotation .Transactional ;
22
+
23
+ public class ReferralServiceTest extends BaseWebContextSensitiveTest {
24
+ @ Autowired
25
+ ReferralService rService ;
26
+
27
+ @ Before
28
+ public void init () throws Exception {
29
+ executeDataSetWithStateManagement ("testdata/referral.xml" );
30
+ }
31
+
32
+ @ Test
33
+ public void getReferralById_shouldReturnReferralById () {
34
+ Assert .assertEquals ("African Health Org" , rService .getReferralById ("1" ).getOrganizationName ());
35
+ }
36
+
37
+ @ Test
38
+ public void getReferralByAnalysisId_shouldReturnReferralByAnalysisId () {
39
+ Assert .assertEquals ("Health Corporations Ltd" , rService .getReferralByAnalysisId ("2" ).getOrganizationName ());
40
+ }
41
+
42
+ @ Test
43
+ public void getReferralsBySampleId_shouldReturnReferralsBySampleId () {
44
+ List <Referral > referrals = rService .getReferralsBySampleId ("1" );
45
+
46
+ Assert .assertEquals (1 , referrals .size ());
47
+ Assert .assertEquals ("African Health Org" , referrals .get (0 ).getOrganizationName ());
48
+ }
49
+
50
+ @ Test
51
+ public void getUncanceledOpenReferrals_shouldReturnUncanceledOpenReferrals () {
52
+ List <Referral > referrals = rService .getUncanceledOpenReferrals ();
53
+
54
+ Assert .assertEquals (2 , referrals .size ());
55
+ Assert .assertEquals ("African Health Org" , referrals .get (0 ).getOrganizationName ());
56
+ }
57
+
58
+ @ Test
59
+ public void getSentReferrals_shouldReturnSentReferrals () {
60
+ List <Referral > referrals = rService .getSentReferrals ();
61
+
62
+ Assert .assertEquals (1 , referrals .size ());
63
+ Assert .assertEquals ("African Health Org" , referrals .get (0 ).getOrganizationName ());
64
+ }
65
+
66
+ @ Test
67
+ public void getSentReferralUuids_shouldSentReferralUuids () {
68
+ List <UUID > referrals = rService .getSentReferralUuids ();
69
+
70
+ Assert .assertEquals (1 , referrals .size ());
71
+ Assert .assertEquals ("436a353f-8ac9-4a30-86db-bb6eda979b57" , referrals .get (0 ).toString ());
72
+ }
73
+
74
+ @ Test
75
+ public void getReferralsByOrganization_shouldReturnReferralsByOrganization () {
76
+ String lDate = "2018-02-15" ;
77
+ String hDate = "2018-02-18" ;
78
+ java .sql .Date lowDate = java .sql .Date .valueOf (lDate );
79
+ java .sql .Date highDate = java .sql .Date .valueOf (hDate );
80
+
81
+ List <Referral > referrals = rService .getReferralsByOrganization ("1" , lowDate , highDate );
82
+
83
+ Assert .assertEquals (1 , referrals .size ());
84
+ Assert .assertEquals ("African Health Org" , referrals .get (0 ).getOrganizationName ());
85
+ }
86
+
87
+ @ Test
88
+ public void getReferralsByAccessionNumber_shouldReturnReferralsByAccessionNumber () {
89
+ List <Referral > referrals = rService .getReferralsByAccessionNumber ("12345" );
90
+
91
+ Assert .assertEquals (1 , referrals .size ());
92
+ Assert .assertEquals ("African Health Org" , referrals .get (0 ).getOrganizationName ());
93
+ }
94
+
95
+ @ Test
96
+ public void getReferralByPatientId_shouldReturnReferralByPatientId () {
97
+ List <Referral > referrals = rService .getReferralByPatientId ("2" );
98
+
99
+ Assert .assertEquals (1 , referrals .size ());
100
+ Assert .assertEquals ("Health Corporations Ltd" , referrals .get (0 ).getOrganizationName ());
101
+ }
102
+
103
+ @ Test
104
+ @ Transactional
105
+ public void convertToDisplayItem_shouldconvertToDisplayItem () {
106
+ Referral referral = rService .get ("1" );
107
+ ReferralDisplayItem item = rService .convertToDisplayItem (referral );
108
+ Assert .assertEquals ("John" , item .getPatientFirstName ());
109
+ Assert .assertEquals ("Doe" , item .getPatientLastName ());
110
+ }
111
+
112
+ @ Test
113
+ @ Transactional
114
+ public void getReferralItems_shouldReturnReferralItems () {
115
+
116
+ ReferredOutTestsForm form = new ReferredOutTestsForm ();
117
+ form .setSearchType (ReferredOutTestsForm .SearchType .PATIENT );
118
+ form .setStartDate ("2018-02-16" );
119
+ form .setEndDate ("2018-02-17" );
120
+ form .setSelPatient ("2" );
121
+ form .setDateType (ReferredOutTestsForm .ReferDateType .SENT );
122
+ form .setTestUnitIds (List .of ("2" ));
123
+ form .setTestIds (List .of ("2" ));
124
+
125
+ List <ReferralDisplayItem > items = rService .getReferralItems (form );
126
+
127
+ assertNotNull (items );
128
+ assertFalse (items .isEmpty ());
129
+ assertEquals ("13333" , items .get (0 ).getAccessionNumber ());
130
+ }
131
+
132
+ @ Test
133
+ public void getReferralsByTestAndDate_shouldReturnFilteredReferrals () {
134
+
135
+ ReferDateType dateType = ReferDateType .SENT ;
136
+ Timestamp startDate = Timestamp .valueOf ("2018-02-16 00:00:00" );
137
+ Timestamp endDate = Timestamp .valueOf ("2018-02-16 23:59:59" );
138
+
139
+ List <String > testUnitIds = Arrays .asList ("1" );
140
+ List <String > testIds = Arrays .asList ("1" );
141
+
142
+ List <Referral > referrals = rService .getReferralsByTestAndDate (dateType , startDate , endDate , testUnitIds ,
143
+ testIds );
144
+
145
+ Assert .assertNotNull (referrals );
146
+ Assert .assertFalse (referrals .isEmpty ());
147
+ referrals .forEach (ref -> {
148
+ Assert .assertNotNull (ref .getId ());
149
+ Assert .assertNotNull (ref .getAnalysis ());
150
+ });
151
+ Assert .assertEquals ("African Health Org" , referrals .get (0 ).getOrganizationName ());
152
+ }
153
+ }
0 commit comments