Java 类android.test.mock.MockCursor 实例源码

项目:what-stored-in-a-mobile-device-android    文件:MediaDataCollectorTest.java   
protected void setUp() {
    TestSetup.setupMockito(this);
    imageDataCollector = new ImageDataCollector(getInstrumentation().getTargetContext());
    spyDC = spy(imageDataCollector);
    Cursor cursor = mock(MockCursor.class);
    when(spyDC.getCursor()).thenReturn(cursor);

    String[] columns = {"Kappa"};
    when(cursor.getColumnNames()).thenReturn(columns);
    when(cursor.moveToNext())
            .thenReturn(true)
            .thenReturn(false);
    when(cursor.getColumnIndex(anyString())).thenReturn(1);
    when(cursor.getString(anyInt())).thenReturn("Test string");


}
项目:devbricks    文件:DatabaseObjectFactoryTest.java   
public void testCreateDatabaseObject() {
    Template templ = new Template();
    assertNotNull(templ);

    templ.addColumn(TestDatabaseObject.COLUMN_INTEGER_VAL);
    templ.addColumn(TestDatabaseObject.COLUMN_LONG_VAL);
    templ.addColumn(TestDatabaseObject.COLUMN_DOUBLE_VAL);
    templ.addColumn(TestDatabaseObject.COLUMN_TEXT_VAL);
    templ.addColumn(TestDatabaseObject.COLUMN_BLOB_VAL);

    DatabaseObject object = null;

    object = DatabaseObjectFactory.createDatabaseObject(TestDatabaseObject.class);
    assertNotNull(object);
    assertEquals(true, object instanceof TestDatabaseObject);
    assertEquals(templ, object.getTemplate());

    MockCursor cursor = new SimpleMockCursor();
    assertNotNull(cursor);

    assertEquals(true, cursor.moveToFirst());

    int i = 0;
    do {
        object = DatabaseObjectFactory.createDatabaseObject(TestDatabaseObject.class);
        assertNotNull(object);

        object.fillValuesFromCursor(cursor);

        assertEquals(true, object instanceof TestDatabaseObject);
        assertEquals(templ, object.getTemplate());
        assertEquals(i, object.getIntegerValue(TestDatabaseObject.COLUMN_INTEGER_VAL));
        assertEquals(i * 1000l, object.getLongValue(TestDatabaseObject.COLUMN_LONG_VAL));
        assertEquals(i * 0.0001, object.getDoubleValue(TestDatabaseObject.COLUMN_DOUBLE_VAL));
        assertEquals(String.format("Text%03d", i), object.getTextValue(TestDatabaseObject.COLUMN_TEXT_VAL));

        i++;
    } while (cursor.moveToNext());
}