#309 - ScalarTypeConverters for Java8 time datatypes not working

This commit is contained in:
rbygrave
2015-06-17 21:13:48 +12:00
parent 2a900165f0
commit 7d02a42276
8 changed files with 51 additions and 7 deletions
@@ -1,6 +1,7 @@
package com.avaje.tests.basic.type;
import java.util.Currency;
import java.util.List;
import java.util.Locale;
import java.util.TimeZone;
@@ -11,6 +12,8 @@ import com.avaje.ebean.BaseTestCase;
import com.avaje.ebean.Ebean;
import com.avaje.tests.model.basic.ESomeType;
import static org.junit.Assert.assertTrue;
public class TestExtraScalarTypes extends BaseTestCase {
@Test
@@ -32,6 +35,15 @@ public class TestExtraScalarTypes extends BaseTestCase {
Assert.assertNotNull(e2.getCurrency());
Assert.assertNotNull(e2.getLocale());
Assert.assertNotNull(e2.getTimeZone());
List<ESomeType> list = Ebean.find(ESomeType.class)
.setAutofetch(false).where()
.eq("locale", locale)
.eq("timeZone", tz.getID())
.eq("currency", currency)
.findList();
assertTrue(!list.isEmpty());
}
}
@@ -7,9 +7,11 @@ import org.junit.Test;
import java.io.IOException;
import java.time.*;
import java.util.List;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
public class TestNewTypes extends BaseTestCase {
@@ -37,6 +39,36 @@ public class TestNewTypes extends BaseTestCase {
Ebean.save(bean);
List<SomeNewTypesBean> list = Ebean.find(SomeNewTypesBean.class).where().lt("instant", Instant.now()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().le("localDate", LocalDate.now()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().lt("localDateTime", LocalDateTime.now()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().lt("offsetDateTime", OffsetDateTime.now()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().lt("zonedDateTime", ZonedDateTime.now()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().eq("zoneId", ZoneId.systemDefault().getId()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().eq("zoneOffset", ZonedDateTime.now().getOffset()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().le("yearMonth", YearMonth.of(2014, 9)).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().le("year", Year.now()).findList();
assertTrue(!list.isEmpty());
list = Ebean.find(SomeNewTypesBean.class).where().le("month", Month.SEPTEMBER).findList();
assertTrue(!list.isEmpty());
SomeNewTypesBean fetched = Ebean.find(SomeNewTypesBean.class, bean.getId());
assertEquals(bean.getZoneId(), fetched.getZoneId());