33import java .util .List ;
44import java .util .Set ;
55
6- import de .symeda .sormas .api .person .PersonContactDetailDto ;
7- import de .symeda .sormas .api .person .PersonContactDetailType ;
86import org .junit .jupiter .api .Assertions ;
7+ import org .junit .jupiter .api .RepeatedTest ;
98import org .junit .jupiter .api .Test ;
109
1110import de .symeda .sormas .api .Disease ;
1514import de .symeda .sormas .api .i18n .I18nProperties ;
1615import de .symeda .sormas .api .immunization .ImmunizationDto ;
1716import de .symeda .sormas .api .immunization .ImmunizationStatus ;
18- import de .symeda .sormas .api .patch .partial_retrieval .DisplayableFieldInfo ;
19- import de .symeda .sormas .api .patch .partial_retrieval .DisplayablePartialRetrievalResponse ;
20- import de .symeda .sormas .api .patch .partial_retrieval .FieldInfo ;
21- import de .symeda .sormas .api .patch .partial_retrieval .PartialRetrievalRequest ;
22- import de .symeda .sormas .api .patch .partial_retrieval .PartialRetrievalResponse ;
23- import de .symeda .sormas .api .patch .partial_retrieval .PartialRetriever ;
17+ import de .symeda .sormas .api .patch .partial_retrieval .*;
18+ import de .symeda .sormas .api .person .PersonContactDetailDto ;
19+ import de .symeda .sormas .api .person .PersonContactDetailType ;
2420import de .symeda .sormas .api .person .PersonDto ;
2521import de .symeda .sormas .api .person .PersonReferenceDto ;
2622import de .symeda .sormas .api .symptoms .SymptomsDto ;
@@ -172,7 +168,7 @@ void retrievePartial_null_value() {
172168 () -> Assertions .assertNull (classificationDateFieldInfo .getFieldValue ()));
173169 }
174170
175- @ Test
171+ @ RepeatedTest ( 12 )
176172 void retrieve_contact_details_phone () {
177173 // PREPARE
178174 Disease disease = Disease .PERTUSSIS ;
@@ -194,20 +190,30 @@ void retrieve_contact_details_phone() {
194190 secondaryPhoneNumber .setPersonContactDetailType (PersonContactDetailType .PHONE );
195191 contactDetails .add (secondaryPhoneNumber );
196192
193+ PersonContactDetailDto emptyPhone = new PersonContactDetailDto ();
194+ emptyPhone .setContactInformation (" " );
195+ emptyPhone .setPersonContactDetailType (PersonContactDetailType .PHONE );
196+ contactDetails .add (emptyPhone );
197+
198+ PersonContactDetailDto nullPhone = new PersonContactDetailDto ();
199+ nullPhone .setContactInformation (null );
200+ nullPhone .setPersonContactDetailType (PersonContactDetailType .PHONE );
201+ contactDetails .add (nullPhone );
202+
197203 getPersonFacade ().save (person );
198204
199205 // EXECUTE
200206 String personContactDetails = toFieldName (PersonContactDetailDto .I18N_PREFIX , PersonContactDetailDto .PHONE_NUMBER_TYPE );
201207 PartialRetrievalResponse actual = victim ()
202- .retrievePartial (new PartialRetrievalRequest ().setCaseUuid (originalCase .getUuid ()).setFieldsToRetrieve (Set .of (personContactDetails )));
208+ .retrievePartial (new PartialRetrievalRequest ().setCaseUuid (originalCase .getUuid ()).setFieldsToRetrieve (Set .of (personContactDetails )));
203209
204210 // CHECK
205211 FieldInfo personFirstNameFieldInfo = actual .getFieldInfoDictionary ().get (personContactDetails );
206212 Assertions .assertAll (
207- () -> Assertions .assertTrue (actual .getFailuresDictionary ().isEmpty ()),
208- () -> Assertions .assertTrue (actual .getFieldInfoDictionary ().containsKey (personContactDetails )),
209- () -> Assertions .assertEquals ("Phone number type" , personFirstNameFieldInfo .getTranslatedFieldName ()),
210- () -> Assertions .assertEquals ("09876543; 12345678" , personFirstNameFieldInfo .getFieldValue ()));
213+ () -> Assertions .assertTrue (actual .getFailuresDictionary ().isEmpty ()),
214+ () -> Assertions .assertTrue (actual .getFieldInfoDictionary ().containsKey (personContactDetails )),
215+ () -> Assertions .assertEquals ("Phone number type" , personFirstNameFieldInfo .getTranslatedFieldName ()),
216+ () -> Assertions .assertEquals ("09876543; 12345678" , personFirstNameFieldInfo .getFieldValue ()));
211217 }
212218
213219 @ Test
@@ -236,15 +242,15 @@ void retrieve_contact_details_email() {
236242 // EXECUTE
237243 String personContactDetails = toFieldName (PersonContactDetailDto .I18N_PREFIX , PersonContactDetailDto .CONTACT_INFORMATION );
238244 PartialRetrievalResponse actual = victim ()
239- .retrievePartial (new PartialRetrievalRequest ().setCaseUuid (originalCase .getUuid ()).setFieldsToRetrieve (Set .of (personContactDetails )));
245+ .retrievePartial (new PartialRetrievalRequest ().setCaseUuid (originalCase .getUuid ()).setFieldsToRetrieve (Set .of (personContactDetails )));
240246
241247 // CHECK
242248 FieldInfo personFirstNameFieldInfo = actual .getFieldInfoDictionary ().get (personContactDetails );
243249 Assertions .assertAll (
244- () -> Assertions .assertTrue (actual .getFailuresDictionary ().isEmpty ()),
245- () -> Assertions .assertTrue (actual .getFieldInfoDictionary ().containsKey (personContactDetails )),
246- () -> Assertions .assertEquals ("Contact information" , personFirstNameFieldInfo .getTranslatedFieldName ()),
247- () -> Assertions .assertEquals ("mail@mail.ch" , personFirstNameFieldInfo .getFieldValue ()));
250+ () -> Assertions .assertTrue (actual .getFailuresDictionary ().isEmpty ()),
251+ () -> Assertions .assertTrue (actual .getFieldInfoDictionary ().containsKey (personContactDetails )),
252+ () -> Assertions .assertEquals ("Contact information" , personFirstNameFieldInfo .getTranslatedFieldName ()),
253+ () -> Assertions .assertEquals ("mail@mail.ch" , personFirstNameFieldInfo .getFieldValue ()));
248254 }
249255
250256 private static String toFieldName (String prefix , String fieldName ) {
0 commit comments