public void testQueriesWithBooleanPropertiesWork() { insertBasicTestModel(); SquidCursor<TestModel> result = database.query( TestModel.class, Query.select(TestModel.PROPERTIES).where(TestModel.IS_HAPPY.isTrue())); assertEquals(1, result.getCount()); result.moveToFirst(); TestModel model = new TestModel(result); assertTrue(model.isHappy()); model.setIsHappy(false); database.persist(model); result.close(); result = database.query( TestModel.class, Query.select(TestModel.PROPERTIES).where(TestModel.IS_HAPPY.isFalse())); assertEquals(1, result.getCount()); result.moveToFirst(); model = new TestModel(result); assertFalse(model.isHappy()); }
private void testRecyclerAdapterInternal(LongProperty idProperty, RecyclerAdapterTest test) { Query query = Query.select(TestModel.PROPERTIES).orderBy(TestModel.BIRTHDAY.asc()).limit(2); if (idProperty != null) { query.selectMore(idProperty); } SquidCursor<TestModel> cursor = database.query(TestModel.class, query); TestRecyclerAdapter adapter = new TestRecyclerAdapter(idProperty); adapter.changeCursor(cursor); try { test.testRecyclerAdapter(adapter); } finally { cursor.close(); } }
public void testFetchByQueryResetsLimitAndTable() { TestModel model1 = new TestModel().setFirstName("Sam1").setLastName("Bosley1"); TestModel model2 = new TestModel().setFirstName("Sam2").setLastName("Bosley2"); TestModel model3 = new TestModel().setFirstName("Sam3").setLastName("Bosley3"); database.persist(model1); database.persist(model2); database.persist(model3); Query query = Query.select().limit(2, 1); TestModel fetched = database.fetchByQuery(TestModel.class, query); assertEquals(model2.getId(), fetched.getId()); assertEquals(2, query.getLimit()); assertEquals(1, query.getOffset()); assertEquals(null, query.getTable()); }
public ArrayList<LibraryAdapter.Language> getFilteredLanguages() { SquidCursor<NetworkLanguageDatabaseEntity> languageCursor = mDb.query(NetworkLanguageDatabaseEntity.class, Query.select()); ArrayList<LibraryAdapter.Language> result = new ArrayList<>(); try { while (languageCursor.moveToNext()) { result.add( new LibraryAdapter.Language( languageCursor.get(NetworkLanguageDatabaseEntity.LANGUAGE_I_S_O_3), languageCursor.get(NetworkLanguageDatabaseEntity.ENABLED))); } } finally { languageCursor.close(); } return result; }
@ViewModelSpec(className = "TestViewModel", viewName = "testView") public class TestViewModelSpec { @ViewQuery public static final Query QUERY = Query.select() .from(TestModel.TABLE) .join(Join.inner(Employee.TABLE, TestModel.ID.eq(Employee.ID))); public static final LongProperty TEST_MODEL_ID = TestModel.ID; public static final LongProperty EMPLOYEE_MODEL_ID = Employee.ID; public static final StringProperty TEST_NAME = TestModel.FIRST_NAME; public static final StringProperty EMPLOYEE_NAME = Employee.NAME; public static final StringProperty UPPERCASE_NAME = StringProperty.fromFunction(Function.upper(EMPLOYEE_NAME), "uppercase_name"); }