Skip to content

Commit

Permalink
Merge pull request #1831 from Khuddusshariff0022/develop_Mosip_30241
Browse files Browse the repository at this point in the history
MOSIP-30241 adding trim functionality based on property.
  • Loading branch information
vishwa-vyom authored Jan 22, 2024
2 parents 23f1653 + 13ff6d9 commit dc7e910
Show file tree
Hide file tree
Showing 3 changed files with 40 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,17 @@ private PacketInfoMapper() {
* the language
* @return the json values
*/
private static String getJsonValues(JsonValue[] jsonNode, String language) {
private static String getJsonValues(JsonValue[] jsonNode, String language,Boolean istrim) {
String value = null;
if (jsonNode != null) {
for (int i = 0; i < jsonNode.length; i++) {
if (jsonNode[i].getLanguage().equals(language)) {
value = jsonNode[i].getValue();
if(istrim)
{
value = jsonNode[i].getValue().trim();
}else {
value = jsonNode[i].getValue();
}
}
}
}
Expand Down Expand Up @@ -115,6 +120,11 @@ private static String[] getLanguages(JsonValue[] jsonNode, StringBuilder languag
*/
public static List<IndividualDemographicDedupeEntity> converDemographicDedupeDtoToEntity(
IndividualDemographicDedupe demoDto, String regId,String process, int iteration, String workflowInstanceId) throws NoSuchAlgorithmException {

return converDemographicDedupeDtoToEntity(demoDto,regId,process,iteration,workflowInstanceId,false);
}
public static List<IndividualDemographicDedupeEntity> converDemographicDedupeDtoToEntity(
IndividualDemographicDedupe demoDto, String regId,String process, int iteration, String workflowInstanceId,Boolean istrim) throws NoSuchAlgorithmException {
regProcLogger.debug(LoggerFileConstant.SESSIONID.toString(), LoggerFileConstant.USERID.toString(), regId,
"PacketInfoMapper::converDemographicDedupeDtoToEntity()::entry");
IndividualDemographicDedupeEntity entity;
Expand Down Expand Up @@ -144,7 +154,7 @@ public static List<IndividualDemographicDedupeEntity> converDemographicDedupeDto

if (demoDto.getName()!=null &&!demoDto.getName().isEmpty()) {
for (JsonValue[] jsonValue : demoDto.getName()) {
applicantFullName.append(getJsonValues(jsonValue, languageArray[i]));
applicantFullName.append(getJsonValues(jsonValue, languageArray[i],istrim));
}
entity.setName(!applicantFullName.toString().isEmpty()
? getHMACHashCode(applicantFullName.toString().trim().toUpperCase())
Expand All @@ -163,7 +173,7 @@ public static List<IndividualDemographicDedupeEntity> converDemographicDedupeDto
throw new DateParseException(PlatformErrorMessages.RPR_SYS_PARSING_DATE_EXCEPTION.getMessage(), e);
}
}
entity.setGender(getHMACHashCode(getJsonValues(demoDto.getGender(), languageArray[i])));
entity.setGender(getHMACHashCode(getJsonValues(demoDto.getGender(), languageArray[i],istrim)));
entity.setPhone(getHMACHashCode(demoDto.getPhone()));
entity.setEmail(getHMACHashCode(demoDto.getEmail()));
demogrphicDedupeEntities.add(entity);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,9 @@ public class PacketInfoManagerImpl implements PacketInfoManager<Identity, Applic
@Value("${registration.processor.demodedupe.manual.adjudication.status}")
private String manualVerificationStatus;

@Value("${mosip.regproc.demo.dedupe.trim-whitespaces.simpleType-value:false}")
private boolean trimWhitespace;

/** The Constant MATCHED_REFERENCE_TYPE. */
private static final String MATCHED_REFERENCE_TYPE = "rid";

Expand Down Expand Up @@ -293,7 +296,7 @@ private void saveIndividualDemographicDedupe(String regId, String process, LogDe

try {
List<IndividualDemographicDedupeEntity> applicantDemographicEntities = PacketInfoMapper
.converDemographicDedupeDtoToEntity(demographicData, regId,process,iteration, workflowInstanceId);
.converDemographicDedupeDtoToEntity(demographicData, regId,process,iteration, workflowInstanceId,trimWhitespace);
for (IndividualDemographicDedupeEntity applicantDemographicEntity : applicantDemographicEntities) {
demographicDedupeRepository.save(applicantDemographicEntity);

Expand Down Expand Up @@ -339,7 +342,7 @@ public void saveIndividualDemographicDedupeUpdatePacket(IndividualDemographicDed

try {
List<IndividualDemographicDedupeEntity> applicantDemographicEntities = PacketInfoMapper
.converDemographicDedupeDtoToEntity(demographicData, registrationId,process,iteration, workflowInstanceId);
.converDemographicDedupeDtoToEntity(demographicData, registrationId,process,iteration, workflowInstanceId,trimWhitespace);
for (IndividualDemographicDedupeEntity applicantDemographicEntity : applicantDemographicEntities) {
demographicDedupeRepository.save(applicantDemographicEntity);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,7 @@
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
import org.mockito.*;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
Expand Down Expand Up @@ -93,6 +90,7 @@
import io.mosip.registration.processor.packet.storage.utils.PriorityBasedPacketManagerService;
import io.mosip.registration.processor.packet.storage.utils.Utilities;
import io.mosip.registration.processor.rest.client.audit.builder.AuditLogRequestBuilder;
import org.springframework.test.util.ReflectionTestUtils;

/**
* The Class PacketInfoManagerImplTest.
Expand Down Expand Up @@ -1057,7 +1055,7 @@ public void testsaveIndividualDemographicDedupe() throws NoSuchAlgorithmExceptio
entity.setDob("2019-03-02T06:29:41.011Z");
applicantDemographicEntities.add(entity);
PowerMockito.mockStatic(PacketInfoMapper.class);
Mockito.when(PacketInfoMapper.converDemographicDedupeDtoToEntity(Mockito.any(), Mockito.any(),Mockito.any(),Mockito.anyInt(), any()))
Mockito.when(PacketInfoMapper.converDemographicDedupeDtoToEntity(Mockito.any(), Mockito.any(),Mockito.any(),Mockito.anyInt(), any(),any()))
.thenReturn(applicantDemographicEntities);
Mockito.when(demographicDedupeRepository.save(any())).thenReturn(entity);
packetInfoManagerImpl.saveIndividualDemographicDedupeUpdatePacket(demographicData,
Expand All @@ -1075,7 +1073,7 @@ public void testsaveIndividualDemographicDedupeException() throws NoSuchAlgorith
entity.setDob("2019-03-02T06:29:41.011Z");
applicantDemographicEntities.add(entity);
PowerMockito.mockStatic(PacketInfoMapper.class);
Mockito.when(PacketInfoMapper.converDemographicDedupeDtoToEntity(Mockito.any(), Mockito.any(),Mockito.any(),Mockito.anyInt(), any()))
Mockito.when(PacketInfoMapper.converDemographicDedupeDtoToEntity(Mockito.any(), Mockito.any(),Mockito.any(),Mockito.anyInt(), any(),any()))
.thenReturn(applicantDemographicEntities);
Mockito.when(demographicDedupeRepository.save(any())).thenThrow(exp);
packetInfoManagerImpl.saveIndividualDemographicDedupeUpdatePacket(demographicData,
Expand Down Expand Up @@ -1153,4 +1151,21 @@ public void dataAccessLayerExceptionTest() {

}

@Test
public void testsaveIndividualDemographicDedupeWithTrim() throws NoSuchAlgorithmException {
ReflectionTestUtils.setField(packetInfoManagerImpl,"trimWhitespace",true);
IndividualDemographicDedupe demographicData = new IndividualDemographicDedupe();
demographicData.setDateOfBirth("2019-03-02T06:29:41.011Z");
List<IndividualDemographicDedupeEntity> applicantDemographicEntities = new ArrayList<>();
IndividualDemographicDedupeEntity entity = new IndividualDemographicDedupeEntity();
entity.setDob("2019-03-02T06:29:41.011Z");
applicantDemographicEntities.add(entity);
PowerMockito.mockStatic(PacketInfoMapper.class);
Mockito.when(PacketInfoMapper.converDemographicDedupeDtoToEntity(Mockito.any(), Mockito.any(),Mockito.any(),Mockito.anyInt(), any(),any()))
.thenReturn(applicantDemographicEntities);
Mockito.when(demographicDedupeRepository.save(any())).thenReturn(entity);
ArgumentCaptor<Integer> arg2 = ArgumentCaptor.forClass(Integer.class);
packetInfoManagerImpl.saveIndividualDemographicDedupeUpdatePacket(demographicData,
"1001", "","NEW", "",1, "");
}
}

0 comments on commit dc7e910

Please sign in to comment.