Added a test that reuses classes and mappings from a real project
[jpa-converters] / src / test / java / de / juplo / jpa / converters / JPAConverterTest.java
index 130aa7a..0ff1493 100644 (file)
@@ -2,6 +2,8 @@ package de.juplo.jpa.converters;
 
 import de.juplo.jpa.converters.TimeConversions.FixedZoneIdStrategy;
 import de.juplo.jpa.converters.TimeConversions.FixedZoneOffsetStrategy;
+import de.juplo.yourshouter.api.model.Date;
+import java.time.LocalDate;
 import java.time.OffsetDateTime;
 import java.time.ZoneId;
 import java.time.ZoneOffset;
@@ -28,6 +30,7 @@ public class JPAConverterTest
 
   ZonedDateTime zdt = ZonedDateTime.now();
   OffsetDateTime odt = OffsetDateTime.now();
+  LocalDate ld = LocalDate.now();
 
   ZoneId defaultZone = ZoneId.systemDefault();
   ZoneId otherZone = defaultZone.getId().equals("America/New_York") ? ZoneId.of("Europe/Berlin") : ZoneId.of("America/New_York");
@@ -104,6 +107,26 @@ public class JPAConverterTest
   }
 
 
+  @Test
+  public void testDataModel()
+  {
+    em = Persistence.createEntityManagerFactory("data-model").createEntityManager();
+    Date date;
+
+    TimeConversions.setZoneIdStrategy(new FixedZoneIdStrategy(defaultZone));
+    date = new Date();
+    date.setId("TEST");
+    date.setDate(ld);
+    date.setStart(zdt);
+    date.setEnd(zdt);
+    persist(date);
+    date = retrieve(Date.class, date.getId());
+    assertEquals(ld, date.getDate());
+    assertEquals(zdt, date.getStart());
+    assertEquals(zdt, date.getEnd());
+  }
+
+
   private void persist(Object entity)
   {
     EntityTransaction tx = em.getTransaction();