From: Gustavo Martin Morcuende Date: Sun, 25 Dec 2016 18:26:06 +0000 (+0100) Subject: Using H2 for data base integrationt tests X-Git-Url: https://git.gumartinm.name/?a=commitdiff_plain;h=ec23270695d1e18cf9ee38522ecc629cf287ac3f;p=JavaForFun Using H2 for data base integrationt tests --- diff --git a/SpringJava/Gradle/spring-jpa-persistence/src/integTest/java/de/spring/example/persistence/repository/AdRespositoryShould.java b/SpringJava/Gradle/spring-jpa-persistence/src/integTest/java/de/spring/example/persistence/repository/AdRespositoryShould.java new file mode 100644 index 0000000..2485486 --- /dev/null +++ b/SpringJava/Gradle/spring-jpa-persistence/src/integTest/java/de/spring/example/persistence/repository/AdRespositoryShould.java @@ -0,0 +1,67 @@ +package de.spring.example.persistence.repository; + +import static org.hamcrest.CoreMatchers.is; +import static org.junit.Assert.assertThat; + +import java.time.OffsetDateTime; + +import javax.inject.Inject; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; +import org.springframework.transaction.annotation.Transactional; + +import de.spring.example.persistence.domain.Ad; + +@RunWith(SpringJUnit4ClassRunner.class) +@ContextConfiguration( {"classpath*:spring-configuration/*.xml", + "classpath*:spring-configuration-test/*.xml"} ) +@Transactional +public class AdRespositoryShould { + // Ad + public static final Long COMPANY_ID = 2L; + public static final Long COMPANY_CATEG_ID = 3L; + public static final String AD_MOBILE_IMAGE = "slippers.jpg"; + public static final OffsetDateTime CREATED_AT = OffsetDateTime.now().minusDays(1); + public static final OffsetDateTime UPDATED_AT = OffsetDateTime.now(); + + @Inject + AdRepository adRepository; + + @Test public void + find_one_Ad_by_id() { + Ad ad = createAd(); + Ad createdAd = adRepository.save(ad); + + Ad storedAd = adRepository.findOne(createdAd.getId()); + + assertThat(createdAd, is(storedAd)); + } + + @Test public void + find_one_Ad_by_id_using_native_query() { + Ad ad = createAd(); + Ad createdAd = adRepository.save(ad); + + Ad storedAd = adRepository.findByIdNativeQuery(createdAd.getId()); + + assertThat(createdAd, is(storedAd)); + } + + @Test public void + find_one_Ad_by_id_using_named_query() { + Ad ad = createAd(); + Ad createdAd = adRepository.save(ad); + + Ad storedAd = adRepository.findByIdQuery(createdAd.getId()); + + assertThat(createdAd, is(storedAd)); + } + + private static final Ad createAd() { + return new Ad(null, null, COMPANY_ID, COMPANY_CATEG_ID, AD_MOBILE_IMAGE, + CREATED_AT, UPDATED_AT); + } +} diff --git a/SpringJava/Gradle/spring-jpa-persistence/src/integTest/resources/spring-configuration-test/datasource-test-configuration.xml b/SpringJava/Gradle/spring-jpa-persistence/src/integTest/resources/spring-configuration-test/datasource-test-configuration.xml new file mode 100644 index 0000000..7ec6b17 --- /dev/null +++ b/SpringJava/Gradle/spring-jpa-persistence/src/integTest/resources/spring-configuration-test/datasource-test-configuration.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + diff --git a/SpringJava/Gradle/spring-jpa-persistence/src/main/resources/spring-configuration/liquibase/ddlChangelog.xml b/SpringJava/Gradle/spring-jpa-persistence/src/main/resources/spring-configuration/liquibase/ddlChangelog.xml index e972618..2fd98a8 100644 --- a/SpringJava/Gradle/spring-jpa-persistence/src/main/resources/spring-configuration/liquibase/ddlChangelog.xml +++ b/SpringJava/Gradle/spring-jpa-persistence/src/main/resources/spring-configuration/liquibase/ddlChangelog.xml @@ -136,10 +136,10 @@ - + - + diff --git a/SpringJava/Gradle/spring-jpa-persistence/src/test/resources/datasource-test-configuration.xml b/SpringJava/Gradle/spring-jpa-persistence/src/test/resources/datasource-test-configuration.xml deleted file mode 100644 index 68cd61f..0000000 --- a/SpringJava/Gradle/spring-jpa-persistence/src/test/resources/datasource-test-configuration.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - -