Compare commits

...

2 Commits

Author SHA1 Message Date
Andrei Isvoran
10811480a2 RED-8043 - Fix 2024-01-03 12:07:46 +02:00
Andrei Isvoran
c8084a373c RED-8043 - Fix 2024-01-03 11:45:00 +02:00
2 changed files with 15 additions and 6 deletions

View File

@ -21,6 +21,7 @@ import com.iqser.red.service.redaction.v1.server.model.ManualEntity;
import com.iqser.red.service.redaction.v1.server.model.document.nodes.Document; import com.iqser.red.service.redaction.v1.server.model.document.nodes.Document;
import com.iqser.red.service.redaction.v1.server.service.document.DocumentGraphMapper; import com.iqser.red.service.redaction.v1.server.service.document.DocumentGraphMapper;
import com.iqser.red.service.redaction.v1.server.service.document.ManualEntityCreationService; import com.iqser.red.service.redaction.v1.server.service.document.ManualEntityCreationService;
import com.iqser.red.service.redaction.v1.server.service.document.ManualRedactionEntryService;
import com.iqser.red.service.redaction.v1.server.storage.ObservedStorageService; import com.iqser.red.service.redaction.v1.server.storage.ObservedStorageService;
import io.micrometer.observation.annotation.Observed; import io.micrometer.observation.annotation.Observed;
@ -38,6 +39,7 @@ public class UnprocessedChangesService {
ManualEntityCreationService manualEntityCreationService; ManualEntityCreationService manualEntityCreationService;
RabbitTemplate rabbitTemplate; RabbitTemplate rabbitTemplate;
ObservedStorageService observedStorageService; ObservedStorageService observedStorageService;
ManualRedactionEntryService manualRedactionEntryService;
@Observed(name = "UnprocessedChangesService", contextualName = "analyse-surrounding-text") @Observed(name = "UnprocessedChangesService", contextualName = "analyse-surrounding-text")
@ -48,11 +50,9 @@ public class UnprocessedChangesService {
Set<String> annotationIds = analyzeRequest.getManualRedactions().getEntriesToAdd().stream().map(ManualRedactionEntry::getAnnotationId).collect(Collectors.toSet()); Set<String> annotationIds = analyzeRequest.getManualRedactions().getEntriesToAdd().stream().map(ManualRedactionEntry::getAnnotationId).collect(Collectors.toSet());
annotationIds.addAll(analyzeRequest.getManualRedactions().getResizeRedactions().stream().map(ManualResizeRedaction::getAnnotationId).collect(Collectors.toSet())); annotationIds.addAll(analyzeRequest.getManualRedactions().getResizeRedactions().stream().map(ManualResizeRedaction::getAnnotationId).collect(Collectors.toSet()));
List<ManualEntity> notFoundManualEntities = new ArrayList<>(); List<ManualEntity> notFoundManualRedactionEntries = manualRedactionEntryService.addManualRedactionEntriesAndReturnNotFoundEntries(analyzeRequest,
List<ManualEntity> manualEntities = manualEntitiesConverter(analyzeRequest.getManualRedactions()); document,
if (!manualEntities.isEmpty()) { analyzeRequest.getDossierTemplateId());
notFoundManualEntities = manualEntityCreationService.toTextEntity(manualEntities, document);
}
document.getEntities().forEach(textEntity -> { document.getEntities().forEach(textEntity -> {
Set<String> processedIds = new HashSet<>(); Set<String> processedIds = new HashSet<>();
@ -75,7 +75,7 @@ public class UnprocessedChangesService {
} }
}); });
notFoundManualEntities.forEach(manualEntity -> unprocessedManualEntities.add(UnprocessedManualEntity.builder() notFoundManualRedactionEntries.forEach(manualEntity -> unprocessedManualEntities.add(UnprocessedManualEntity.builder()
.annotationId(manualEntity.getId()) .annotationId(manualEntity.getId())
.textAfter("") .textAfter("")
.textBefore("") .textBefore("")

View File

@ -3,8 +3,10 @@ package com.iqser.red.service.redaction.v1.server.service.document;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.anyString;
import static org.mockito.ArgumentMatchers.eq; import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
@ -19,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration; import org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.boot.test.mock.mockito.SpyBean; import org.springframework.boot.test.mock.mockito.SpyBean;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.ComponentScan;
@ -40,6 +43,7 @@ import com.iqser.red.service.redaction.v1.model.UnprocessedManualEntity;
import com.iqser.red.service.redaction.v1.server.AbstractRedactionIntegrationTest; import com.iqser.red.service.redaction.v1.server.AbstractRedactionIntegrationTest;
import com.iqser.red.service.redaction.v1.server.Application; import com.iqser.red.service.redaction.v1.server.Application;
import com.iqser.red.service.redaction.v1.server.RedactionIntegrationTest; import com.iqser.red.service.redaction.v1.server.RedactionIntegrationTest;
import com.iqser.red.service.redaction.v1.server.service.DictionaryService;
import com.iqser.red.service.redaction.v1.server.service.UnprocessedChangesService; import com.iqser.red.service.redaction.v1.server.service.UnprocessedChangesService;
import com.iqser.red.storage.commons.StorageAutoConfiguration; import com.iqser.red.storage.commons.StorageAutoConfiguration;
import com.iqser.red.storage.commons.service.StorageService; import com.iqser.red.storage.commons.service.StorageService;
@ -76,6 +80,9 @@ public class UnprocessedChangesServiceTest extends AbstractRedactionIntegrationT
@Autowired @Autowired
UnprocessedChangesService unprocessedChangesService; UnprocessedChangesService unprocessedChangesService;
@MockBean
DictionaryService dictionaryService;
@Test @Test
public void testManualSurroundingText() { public void testManualSurroundingText() {
@ -130,6 +137,8 @@ public class UnprocessedChangesServiceTest extends AbstractRedactionIntegrationT
request.setManualRedactions(manualRedactions); request.setManualRedactions(manualRedactions);
analyzeDocumentStructure(LayoutParsingType.REDACT_MANAGER, request); analyzeDocumentStructure(LayoutParsingType.REDACT_MANAGER, request);
when(dictionaryService.isHint(anyString(), anyString())).thenReturn(false);
unprocessedChangesService.analyseSurroundingText(request); unprocessedChangesService.analyseSurroundingText(request);
verify(rabbitTemplate).convertAndSend(eq(QueueNames.REDACTION_ANALYSIS_RESPONSE_QUEUE), captor.capture()); verify(rabbitTemplate).convertAndSend(eq(QueueNames.REDACTION_ANALYSIS_RESPONSE_QUEUE), captor.capture());