Esempio n. 1
0
  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();
    }
  }
Esempio n. 3
0
  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());
  }
Esempio n. 4
0
 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;
 }
Esempio n. 5
0
@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");
}