From 788dac69ad6e085ab926d91736885b82b86618bb Mon Sep 17 00:00:00 2001 From: Konstantinos Spyrou Date: Tue, 17 Jan 2023 15:50:43 +0200 Subject: [PATCH] added tests for InterfaceComplianceRequest --- .../integration}/metrics/PrometheusTest.java | 2 +- .../InterfaceComplianceRequestTests.java | 58 ++++++++++++++++ .../unit/InterfaceComplianceRequestTest.java | 27 ++++++++ src/test/resources/application-context.xml | 42 ------------ src/test/resources/application.yml | 13 ++++ src/test/resources/applicationContext.xml | 66 ------------------- 6 files changed, 99 insertions(+), 109 deletions(-) rename src/test/java/{ => eu/dnetlib/repo/manager/integration}/metrics/PrometheusTest.java (97%) create mode 100644 src/test/java/eu/dnetlib/repo/manager/integration/service/InterfaceComplianceRequestTests.java create mode 100644 src/test/java/eu/dnetlib/repo/manager/unit/InterfaceComplianceRequestTest.java delete mode 100644 src/test/resources/application-context.xml create mode 100644 src/test/resources/application.yml delete mode 100644 src/test/resources/applicationContext.xml diff --git a/src/test/java/metrics/PrometheusTest.java b/src/test/java/eu/dnetlib/repo/manager/integration/metrics/PrometheusTest.java similarity index 97% rename from src/test/java/metrics/PrometheusTest.java rename to src/test/java/eu/dnetlib/repo/manager/integration/metrics/PrometheusTest.java index 8c34c6c..897aaea 100644 --- a/src/test/java/metrics/PrometheusTest.java +++ b/src/test/java/eu/dnetlib/repo/manager/integration/metrics/PrometheusTest.java @@ -1,4 +1,4 @@ -package metrics; +package eu.dnetlib.repo.manager.integration.metrics; import eu.dnetlib.repo.manager.controllers.PrometheusController; import eu.dnetlib.repo.manager.service.PiWikService; diff --git a/src/test/java/eu/dnetlib/repo/manager/integration/service/InterfaceComplianceRequestTests.java b/src/test/java/eu/dnetlib/repo/manager/integration/service/InterfaceComplianceRequestTests.java new file mode 100644 index 0000000..8a19e7d --- /dev/null +++ b/src/test/java/eu/dnetlib/repo/manager/integration/service/InterfaceComplianceRequestTests.java @@ -0,0 +1,58 @@ +package eu.dnetlib.repo.manager.integration.service; + +import eu.dnetlib.repo.manager.domain.InterfaceComplianceRequest; +import eu.dnetlib.repo.manager.domain.InterfaceComplianceRequestId; +import eu.dnetlib.repo.manager.repository.InterfaceComplianceRequestsRepository; +import org.junit.Assert; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.test.context.junit4.SpringRunner; + +import java.util.Date; + +@RunWith(SpringRunner.class) +@DataJpaTest +//@AutoConfigureTestDatabase +@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE) +//@Transactional(propagation = Propagation.NOT_SUPPORTED) +class InterfaceComplianceRequestTests { + + @Autowired + private InterfaceComplianceRequestsRepository repository; + + @Test + void getRequestById() { + InterfaceComplianceRequest request = createRequest("3"); + repository.save(request); + long total = repository.count(); + Assert.assertEquals(1, total); + InterfaceComplianceRequest r = repository.findById(createRequestId()).orElse(null); + Assert.assertNotNull(r); + } + + @AfterEach + public void deleteRequestAfterTests() { + repository.deleteById(createRequestId()); + } + + private InterfaceComplianceRequestId createRequestId() { + InterfaceComplianceRequestId id = new InterfaceComplianceRequestId(); + id.setRepositoryId("repository"); + id.setInterfaceId("interface"); + return id; + } + + private InterfaceComplianceRequest createRequest(String compatibilityLevel) { + InterfaceComplianceRequest request = new InterfaceComplianceRequest(); + InterfaceComplianceRequestId id = createRequestId(); + request.setRepositoryId(id.getRepositoryId()); + request.setInterfaceId(id.getInterfaceId()); + request.setDesiredCompatibilityLevel(compatibilityLevel); + request.setSubmissionDate(new Date()); + return request; + } +} diff --git a/src/test/java/eu/dnetlib/repo/manager/unit/InterfaceComplianceRequestTest.java b/src/test/java/eu/dnetlib/repo/manager/unit/InterfaceComplianceRequestTest.java new file mode 100644 index 0000000..ed2efcf --- /dev/null +++ b/src/test/java/eu/dnetlib/repo/manager/unit/InterfaceComplianceRequestTest.java @@ -0,0 +1,27 @@ +package eu.dnetlib.repo.manager.unit; + +import eu.dnetlib.repo.manager.domain.InterfaceComplianceRequest; +import eu.dnetlib.repo.manager.domain.dto.InterfaceComplianceRequestDTO; +import org.junit.Assert; +import org.junit.jupiter.api.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + + +@SpringBootTest(classes = InterfaceComplianceRequest.class) +@RunWith(SpringRunner.class) +class InterfaceComplianceRequestTest { + + @Test + void interfaceComplianceRequest_contains_date_test() { + InterfaceComplianceRequest request = new InterfaceComplianceRequest(); + Assert.assertNotNull(request.getSubmissionDate()); + + InterfaceComplianceRequestDTO dto = new InterfaceComplianceRequestDTO(); + Assert.assertNull(dto.getSubmissionDate()); + + request = InterfaceComplianceRequest.from(dto); + Assert.assertNotNull(request.getSubmissionDate()); + } +} diff --git a/src/test/resources/application-context.xml b/src/test/resources/application-context.xml deleted file mode 100644 index 4a5fb66..0000000 --- a/src/test/resources/application-context.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - classpath*:/gr/**/springContext-*.properties - classpath*:/eu/**/springContext-*.properties - - classpath*:/application.properties - classpath*:email-texts.properties - - - - - - - - - - - - - \ No newline at end of file diff --git a/src/test/resources/application.yml b/src/test/resources/application.yml new file mode 100644 index 0000000..16f944c --- /dev/null +++ b/src/test/resources/application.yml @@ -0,0 +1,13 @@ +spring: + datasource: + url: jdbc:h2:mem:test + driverClassName: org.h2.Driver + h2: + console: + enabled: true + jpa: + show-sql: true + hibernate: + ddl-auto: update + main: + banner-mode: console diff --git a/src/test/resources/applicationContext.xml b/src/test/resources/applicationContext.xml deleted file mode 100644 index fabd773..0000000 --- a/src/test/resources/applicationContext.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - classpath*:/gr/**/springContext-*.properties - classpath*:/eu/**/springContext-*.properties - - classpath*:/application.properties - classpath*:/email-texts.properties - - - - - - - - - - - - - - \ No newline at end of file