package org.greenrobot.greendao.test.entityannotation; import org.greenrobot.greendao.test.AbstractDaoTestLongPk; public class NotNullThingTest extends AbstractDaoTestLongPk<NotNullThingDao, NotNullThing> { public NotNullThingTest() { super(NotNullThingDao.class); } @Override protected NotNullThing createEntity(Long key) { NotNullThing thing = new NotNullThing(); thing.setId(key); thing.setNotNullBoolean(true); thing.setNotNullInteger(42); thing.setNotNullWrappedBoolean(true); thing.setNotNullWrappedInteger(42); thing.setNullableBoolean(true); thing.setNullableInteger(42); thing.setNullableWrappedBoolean(true); thing.setNullableWrappedInteger(42); return thing; } public void testInsertNotNullProperties() { NotNullThing thing = createEntity(1L); thing.setNotNullWrappedBoolean(null); thing.setNotNullWrappedInteger(null); try { dao.insert(thing); fail(); } catch (NullPointerException ignored) { } } public void testInsertNullableProperties() { NotNullThing thing = createEntity(1L); thing.setNullableWrappedBoolean(null); thing.setNullableWrappedInteger(null); dao.insert(thing); loadAndAssertNullableProperties(thing); } public void testUpdateNotNullProperties() { NotNullThing thing = insertEntity(); thing.setNotNullWrappedBoolean(null); thing.setNotNullWrappedInteger(null); try { dao.update(thing); fail(); } catch (NullPointerException ignored) { } } public void testUpdateNullableProperties() { NotNullThing thing = insertEntity(); thing.setNullableWrappedBoolean(null); thing.setNullableWrappedInteger(null); dao.update(thing); loadAndAssertNullableProperties(thing); } private NotNullThing insertEntity() { NotNullThing thing = createEntity(1L); dao.insert(thing); return thing; } private void loadAndAssertNullableProperties(NotNullThing thing) { NotNullThing loaded = dao.load(thing.getId()); assertTrue(loaded.getNullableBoolean()); assertEquals(42, loaded.getNullableInteger()); assertTrue(loaded.getNotNullBoolean()); assertEquals(42, loaded.getNotNullInteger()); assertNull(loaded.getNullableWrappedBoolean()); assertNull(loaded.getNullableWrappedInteger()); assertNotNull(loaded.getNotNullWrappedBoolean()); assertNotNull(loaded.getNotNullWrappedInteger()); } }