manual red test

This commit is contained in:
Timo Bejan 2021-09-19 23:14:43 +03:00
parent f36a2c3590
commit a85fc61971
5 changed files with 51 additions and 25 deletions

View File

@ -46,7 +46,7 @@ public interface DictionaryResource {
@ResponseStatus(HttpStatus.NO_CONTENT)
@PostMapping(value = TYPE_PATH + TYPE_PATH_VARIABLE + DOSSIER_TEMPLATE_PATH_VARIABLE, consumes = MediaType.APPLICATION_JSON_VALUE)
@PostMapping(value = TYPE_PATH + TYPE_PATH_VARIABLE , consumes = MediaType.APPLICATION_JSON_VALUE)
void updateTypeValue(@PathVariable(TYPE_PARAMETER_NAME) String typeId,
@RequestBody Type typeValue);

View File

@ -30,6 +30,7 @@ public class AddRedactionPersistenceService {
BeanUtils.copyProperties(addRedactionRequest, manualRedactionEntry);
manualRedactionEntry.setRequestDate(OffsetDateTime.now());
manualRedactionEntry.setPositions(addRedactionRequest.getPositions());
manualRedactionEntry.setTypeId(addRedactionRequest.getType());
manualRedactionRepository.save(manualRedactionEntry);

View File

@ -62,8 +62,9 @@ public class DictionaryPersistenceService {
public void updateType(String typeId, Type typeValueRequest) {
typeRepository.findById(typeId).ifPresent((type) -> {
type.setVersion(type.getVersion() + 1);
checkRankAlreadyExists(type.getType(), type.getDossierTemplate().getId(), typeValueRequest.getRank(), type.getDossier() == null ? null : type.getDossier().getId());
BeanUtils.copyProperties(typeValueRequest, type);
BeanUtils.copyProperties(typeValueRequest, type, "dossierTemplateId", "dossierId", "entries", "dossierTemplate", "dossier", "id", "version");
});
}
@ -101,7 +102,7 @@ public class DictionaryPersistenceService {
public Type getType(String typeId) {
return typeRepository.findById(typeId).orElseThrow(() -> new NotFoundException("No color found for type : " + typeId));
return typeRepository.findById(typeId).orElseThrow(() -> new NotFoundException("Type: " + typeId + " not found"));
}

View File

@ -1,23 +1,16 @@
package com.iqser.red.service.peristence.v1.server.integration.tests;
import static org.assertj.core.api.Assertions.assertThat;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import com.iqser.red.service.peristence.v1.server.integration.client.ManualRedactionClient;
import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider;
import com.iqser.red.service.peristence.v1.server.integration.service.FileTesterAndProvider;
import com.iqser.red.service.peristence.v1.server.integration.service.TypeProvider;
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
import com.iqser.red.service.persistence.service.v1.api.model.AddRedactionRequest;
import com.iqser.red.service.persistence.service.v1.api.model.CommentRequest;
import com.iqser.red.service.persistence.service.v1.api.model.ForceRedactionRequest;
import com.iqser.red.service.persistence.service.v1.api.model.ImageRecategorizationRequest;
import com.iqser.red.service.persistence.service.v1.api.model.JSONPrimitive;
import com.iqser.red.service.persistence.service.v1.api.model.LegalBasisChangeRequest;
import com.iqser.red.service.persistence.service.v1.api.model.RemoveRedactionRequest;
import com.iqser.red.service.persistence.service.v1.api.model.*;
import com.iqser.red.service.persistence.service.v1.api.model.data.annotations.AnnotationStatus;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import static org.assertj.core.api.Assertions.assertThat;
public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
@ -40,32 +33,45 @@ public class ManualRedactionTest extends AbstractPersistenceServerServiceTest {
var file = fileTesterAndProvider.testAndProvideFile(dossier);
var type = typeProvider.testAndProvideType(dossier.getDossierTemplate());
var type = typeProvider.testAndProvideType(dossier.getDossierTemplate(), "manual");
var comment = manualRedactionClient.addComment(dossier.getId(), file.getId(), "1", CommentRequest.builder().text("test").user("1").build());
var loadedComment = manualRedactionClient.getComment(comment.getId());
assertThat(loadedComment.getText()).isEqualTo("test");
var addRedaction = manualRedactionClient.addAddRedaction(dossier.getId(), file.getId(), AddRedactionRequest.builder().addToDictionary(true).addToDossierDictionary(false).status(AnnotationStatus.REQUESTED).type("manual").user("user").reason("1").value("1").legalBasis("1").build());
var addRedaction = manualRedactionClient.addAddRedaction(dossier.getId(), file.getId(), AddRedactionRequest.builder().addToDictionary(true)
.addToDossierDictionary(false).status(AnnotationStatus.REQUESTED).type(type.getId()).user("user").reason("1").value("1").legalBasis("1").build());
var loadedAddRedaction = manualRedactionClient.getAddRedaction(file.getId(), addRedaction.getAnnotationId());
assertThat(loadedAddRedaction.getUser()).isEqualTo("user");
assertThat(loadedAddRedaction.getTypeId()).isEqualTo("manual");
assertThat(loadedAddRedaction.getTypeId()).contains("manual");
var removeRedaction = manualRedactionClient.addRemoveRedaction(dossier.getId(), file.getId(), RemoveRedactionRequest.builder().annotationId(addRedaction.getAnnotationId()).comment("commi").removeFromDictionary(false).build());
var removeRedaction = manualRedactionClient.addRemoveRedaction(dossier.getId(), file.getId(), RemoveRedactionRequest.builder()
.annotationId(addRedaction.getAnnotationId()).comment("comment").status(AnnotationStatus.REQUESTED).user("test").removeFromDictionary(false).build());
manualRedactionClient.updateRemoveRedactionStatus(dossier.getId(), file.getId(), removeRedaction.getAnnotationId(), JSONPrimitive.of(AnnotationStatus.REQUESTED));
var loadedRemoveRedaction = manualRedactionClient.getRemoveRedaction(file.getId(), removeRedaction.getAnnotationId());
assertThat(loadedRemoveRedaction.isRemoveFromDictionary()).isEqualTo(false);
assertThat(loadedRemoveRedaction.getSoftDeletedTime()).isNotEqualTo(null);
assertThat(loadedRemoveRedaction.getSoftDeletedTime()).isNull();
var forceRedaction = manualRedactionClient.addForceRedaction(dossier.getId(), file.getId(), ForceRedactionRequest.builder().annotationId(addRedaction.getAnnotationId()).comment("commi").legalBasis("1").build());
var forceRedaction = manualRedactionClient.addForceRedaction(dossier.getId(), file.getId(), ForceRedactionRequest.builder()
.annotationId(addRedaction.getAnnotationId()).comment("comment").status(AnnotationStatus.REQUESTED).user("test").legalBasis("1").build());
var loadedForceRedaction = manualRedactionClient.getForceRedaction(file.getId(), forceRedaction.getAnnotationId());
assertThat(loadedForceRedaction.getLegalBasis()).isEqualTo("1");
var legalBasisChange = manualRedactionClient.addLegalBasisChange(dossier.getId(), file.getId(), new LegalBasisChangeRequest()); //TODO: fill
var loadedLegalBasisChange = manualRedactionClient.getLegalBasisChange(file.getId(), addRedaction.getAnnotationId());
assertThat(loadedLegalBasisChange.getId()).isEqualTo(legalBasisChange.getAnnotationId());
var imageRecategorization = manualRedactionClient.addImageRecategorization(dossier.getId(), file.getId(), ImageRecategorizationRequest.builder().build());//TODO: fill
var legalBasisChange = manualRedactionClient.addLegalBasisChange(dossier.getId(), file.getId(), LegalBasisChangeRequest.builder()
.annotationId(addRedaction.getAnnotationId()).comment("comment").status(AnnotationStatus.REQUESTED).user("test").legalBasis("1").build());
var loadedLegalBasisChange = manualRedactionClient.getLegalBasisChange(file.getId(), addRedaction.getAnnotationId());
assertThat(loadedLegalBasisChange.getId().getId()).isEqualTo(legalBasisChange.getAnnotationId());
var imageRecategorization = manualRedactionClient.addImageRecategorization(dossier.getId(), file.getId(), ImageRecategorizationRequest.builder()
.annotationId(addRedaction.getAnnotationId()).comment("comment").status(AnnotationStatus.REQUESTED).user("test").type("new-type").build());
var loadedImageRecategorization = manualRedactionClient.getImageRecategorization(file.getId(), addRedaction.getAnnotationId());
assertThat(loadedImageRecategorization.getId().getId()).isEqualTo(imageRecategorization.getAnnotationId());
}

View File

@ -6,8 +6,10 @@ import com.iqser.red.service.peristence.v1.server.integration.service.TypeProvid
import com.iqser.red.service.peristence.v1.server.integration.utils.AbstractPersistenceServerServiceTest;
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.Colors;
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.DictionaryEntry;
import com.iqser.red.service.persistence.service.v1.api.model.data.configuration.Type;
import org.assertj.core.util.Lists;
import org.junit.Test;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
@ -49,6 +51,22 @@ public class TypeTest extends AbstractPersistenceServerServiceTest {
assertThat(loadedType.getVersion()).isGreaterThan(type.getVersion() + 1);
var request = new Type();
BeanUtils.copyProperties(type, request);
request.setRank(99);
dictionaryClient.updateTypeValue(type.getId(), request);
loadedType = dictionaryClient.getDictionaryForType(type.getId());
assertThat(loadedType.getVersion()).isGreaterThan(type.getVersion() + 2);
assertThat(loadedType.getRank()).isEqualTo(99);
dictionaryClient.deleteType(type.getId());
var typesForTemplate = dictionaryClient.getAllTypesForDossierTemplate(loadedType.getDossierTemplateId());
assertThat(typesForTemplate).isEmpty();
}
@Test