From 375d6c2513c86fee8bd792898968abe5a4f2feab Mon Sep 17 00:00:00 2001 From: "michele.artini" Date: Wed, 28 Jun 2023 15:24:18 +0200 Subject: [PATCH] test --- .../community/db/model/DbOrganization.java | 5 ++ .../CommunityImporterController.java | 3 +- .../CommunityImporterService.java | 19 ++++++- .../CommunityImporterServiceTest.java | 50 +++++++++++++++++++ .../{ => importer}/old_community_profile.xml | 0 .../{ => importer}/old_provision_wf.xml | 0 6 files changed, 74 insertions(+), 3 deletions(-) rename apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/{ => importer}/CommunityImporterController.java (94%) rename apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/{db => importer}/CommunityImporterService.java (96%) create mode 100644 apps/dnet-exporter-api/src/test/java/eu/dnetlib/openaire/community/importer/CommunityImporterServiceTest.java rename apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/{ => importer}/old_community_profile.xml (100%) rename apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/{ => importer}/old_provision_wf.xml (100%) diff --git a/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/model/DbOrganization.java b/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/model/DbOrganization.java index 430f2709..7ab5ff45 100644 --- a/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/model/DbOrganization.java +++ b/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/model/DbOrganization.java @@ -46,4 +46,9 @@ public class DbOrganization implements Serializable { this.orgId = orgId; } + @Override + public String toString() { + return String.format("DbOrganization [community=%s, orgId=%s]", community, orgId); + } + } diff --git a/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/CommunityImporterController.java b/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/importer/CommunityImporterController.java similarity index 94% rename from apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/CommunityImporterController.java rename to apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/importer/CommunityImporterController.java index afb981db..ea439627 100644 --- a/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/CommunityImporterController.java +++ b/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/importer/CommunityImporterController.java @@ -1,4 +1,4 @@ -package eu.dnetlib.openaire.community; +package eu.dnetlib.openaire.community.importer; import java.io.IOException; import java.util.List; @@ -14,7 +14,6 @@ import org.springframework.web.bind.annotation.RestController; import com.google.common.collect.Sets; import eu.dnetlib.openaire.common.ISClient; -import eu.dnetlib.openaire.community.db.CommunityImporterService; import eu.dnetlib.openaire.community.db.model.DbOrganization; import eu.dnetlib.openaire.exporter.exceptions.CommunityException; import eu.dnetlib.openaire.exporter.model.context.Context; diff --git a/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/CommunityImporterService.java b/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/importer/CommunityImporterService.java similarity index 96% rename from apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/CommunityImporterService.java rename to apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/importer/CommunityImporterService.java index 8b35122e..777606ee 100644 --- a/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/db/CommunityImporterService.java +++ b/apps/dnet-exporter-api/src/main/java/eu/dnetlib/openaire/community/importer/CommunityImporterService.java @@ -1,4 +1,4 @@ -package eu.dnetlib.openaire.community.db; +package eu.dnetlib.openaire.community.importer; import java.time.LocalDateTime; import java.time.ZoneId; @@ -25,6 +25,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.Lists; +import eu.dnetlib.openaire.community.db.CommunityService; import eu.dnetlib.openaire.community.db.model.DbOrganization; import eu.dnetlib.openaire.community.db.repository.DbOrganizationRepository; import eu.dnetlib.openaire.exporter.exceptions.CommunityException; @@ -332,4 +333,20 @@ public class CommunityImporterService { .atZone(ZoneId.systemDefault()) .toLocalDateTime(); } + + protected DbOrganizationRepository getDbOrganizationRepository() { + return dbOrganizationRepository; + } + + protected void setDbOrganizationRepository(final DbOrganizationRepository dbOrganizationRepository) { + this.dbOrganizationRepository = dbOrganizationRepository; + } + + protected CommunityService getService() { + return service; + } + + protected void setService(final CommunityService service) { + this.service = service; + } } diff --git a/apps/dnet-exporter-api/src/test/java/eu/dnetlib/openaire/community/importer/CommunityImporterServiceTest.java b/apps/dnet-exporter-api/src/test/java/eu/dnetlib/openaire/community/importer/CommunityImporterServiceTest.java new file mode 100644 index 00000000..a5604e7a --- /dev/null +++ b/apps/dnet-exporter-api/src/test/java/eu/dnetlib/openaire/community/importer/CommunityImporterServiceTest.java @@ -0,0 +1,50 @@ +package eu.dnetlib.openaire.community.importer; + +import static org.junit.jupiter.api.Assertions.fail; + +import java.nio.charset.StandardCharsets; +import java.util.List; + +import org.apache.commons.io.IOUtils; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mock; +import org.mockito.junit.jupiter.MockitoExtension; + +import eu.dnetlib.openaire.community.db.CommunityService; +import eu.dnetlib.openaire.community.db.model.DbOrganization; +import eu.dnetlib.openaire.community.db.repository.DbOrganizationRepository; + +@ExtendWith(MockitoExtension.class) +class CommunityImporterServiceTest { + + // Class under test + private CommunityImporterService importer; + + @Mock + private DbOrganizationRepository dbOrganizationRepository; + + @Mock + private CommunityService service; + + @BeforeEach + public void setUp() { + importer = new CommunityImporterService(); + importer.setDbOrganizationRepository(dbOrganizationRepository); + importer.setService(service); + } + + @Test + public void testImportPropagationOrganizationsFromProfile() throws Exception { + final String profile = IOUtils.toString(getClass().getResourceAsStream("old_provision_wf.xml"), StandardCharsets.UTF_8.toString()); + final List list = importer.importPropagationOrganizationsFromProfile(profile, true); + list.forEach(System.out::println); + } + + @Test + public void testImportCommunity() { + fail("Not yet implemented"); + } + +} diff --git a/apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/old_community_profile.xml b/apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/importer/old_community_profile.xml similarity index 100% rename from apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/old_community_profile.xml rename to apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/importer/old_community_profile.xml diff --git a/apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/old_provision_wf.xml b/apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/importer/old_provision_wf.xml similarity index 100% rename from apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/old_provision_wf.xml rename to apps/dnet-exporter-api/src/test/resources/eu/dnetlib/openaire/community/importer/old_provision_wf.xml