From 4854837dacb51c5494c417bc1642718085b25d6a Mon Sep 17 00:00:00 2001 From: alioezyetimoglu Date: Tue, 30 Jul 2024 15:58:27 +0200 Subject: [PATCH] RED-8951: added some JUnit tests --- .../integration/tests/DictionaryTest.java | 79 ++++++++++++++++++- 1 file changed, 75 insertions(+), 4 deletions(-) diff --git a/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DictionaryTest.java b/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DictionaryTest.java index fe3a917ca..4b60b2210 100644 --- a/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DictionaryTest.java +++ b/persistence-service-v1/persistence-service-server-v1/src/test/java/com/iqser/red/service/peristence/v1/server/integration/tests/DictionaryTest.java @@ -1,6 +1,7 @@ package com.iqser.red.service.peristence.v1.server.integration.tests; import static org.assertj.core.api.Assertions.assertThat; +import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertTrue; @@ -23,6 +24,7 @@ import com.iqser.red.service.peristence.v1.server.integration.service.DossierTem import com.iqser.red.service.peristence.v1.server.integration.service.DossierTesterAndProvider; 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.management.v1.processor.service.DictionaryManagementService; import com.iqser.red.service.persistence.management.v1.processor.service.DictionaryService; import com.iqser.red.service.persistence.service.v1.api.external.model.UpdateEntries; import com.iqser.red.service.persistence.service.v1.api.shared.model.CreateTypeValue; @@ -51,6 +53,9 @@ public class DictionaryTest extends AbstractPersistenceServerServiceTest { @Autowired private DictionaryClient dictionaryClient; + @Autowired + private DictionaryManagementService dictionaryManagementService; + @Autowired private DossierTemplateClient dossierTemplateClient; @@ -606,10 +611,10 @@ public class DictionaryTest extends AbstractPersistenceServerServiceTest { UpdateEntries updateEntries = new UpdateEntries(null, entriesToDelete); UpdateEntries finalUpdateEntries = updateEntries; Assertions.assertDoesNotThrow(() -> dictionaryClient.updateEntries(createdType.getType(), - createdType.getDossierTemplateId(), - finalUpdateEntries, - null, - DictionaryEntryType.ENTRY)); + createdType.getDossierTemplateId(), + finalUpdateEntries, + null, + DictionaryEntryType.ENTRY)); updateEntries = new UpdateEntries(entriesToAdd, null); UpdateEntries finalUpdateEntries1 = updateEntries; @@ -993,6 +998,7 @@ public class DictionaryTest extends AbstractPersistenceServerServiceTest { .hexColor("#fcba03") .rank(100) .hint(false) + .hasDictionary(false) .caseInsensitive(false) .recommendation(false) .addToDictionaryAction(true) @@ -1037,6 +1043,71 @@ public class DictionaryTest extends AbstractPersistenceServerServiceTest { } + @Test + public void testAddEntriesWithIsImportFlag() { + + var dossier = dossierTesterAndProvider.provideTestDossier(); + + var dossierTemplate = dossierTemplateClient.getDossierTemplate(dossier.getDossierTemplateId()); + + var dtType = dictionaryClient.addType(CreateTypeValue.builder() + .type("test1") + .label("test1") + .hexColor("#fcba03") + .rank(100) + .hint(false) + .caseInsensitive(false) + .recommendation(false) + .addToDictionaryAction(true) + .dossierTemplateId(dossierTemplate.getId()) + .dossierDictionaryOnly(false) + .build()); + + List types = dictionaryClient.getAllTypes(dossierTemplate.getId(), null, true).getTypes(); + assertThat(types.size()).isEqualTo(1); + + String dictionaryEntry = "entry1"; + dictionaryManagementService.addEntries(dtType.getTypeId(), List.of(dictionaryEntry), false, false, DictionaryEntryType.ENTRY, true); + var dictionaryEntries = dictionaryManagementService.getAllEntriesInDossierTemplate(dtType.getTypeId(), dictionaryEntry, DictionaryEntryType.ENTRY); + + + assertThat(types.get(0).isHasDictionary()).isFalse(); + assertThat(dictionaryEntries.get(0).getValue()).isEqualTo(dictionaryEntry); + } + + + @Test + public void testAddEntriesWithoutIsImportFlag() { + + var dossier = dossierTesterAndProvider.provideTestDossier(); + + var dossierTemplate = dossierTemplateClient.getDossierTemplate(dossier.getDossierTemplateId()); + + var dtType = dictionaryClient.addType(CreateTypeValue.builder() + .type("test1") + .label("test1") + .hexColor("#fcba03") + .rank(100) + .hint(false) + .caseInsensitive(false) + .recommendation(false) + .addToDictionaryAction(true) + .dossierTemplateId(dossierTemplate.getId()) + .dossierDictionaryOnly(false) + .build()); + assertThat(dtType.getRank()).isEqualTo(100); + assertThat(dtType.isDossierDictionaryOnly()).isFalse(); + assertThat(dictionaryClient.getAllTypes(dossierTemplate.getId(), null, true).getTypes().size()).isEqualTo(1); + + assertThatThrownBy(() -> dictionaryManagementService.addEntries(dtType.getTypeId(), + List.of("entry1", "entry2"), + false, + false, + DictionaryEntryType.ENTRY, + false)).hasMessageContaining("Entity type does not have a dictionary"); + } + + private static final class ListContentWithoutOrderAndWithoutDuplicatesComparator implements Comparator> { @SuppressWarnings("SuspiciousMethodCalls") -- 2.47.2