在我的情况下,Robolectric SQLiteOpenHelper 中的 getVersion 始终返回 0。因此,如果当前 DATABASE_VERSION 大于 0,则在 DBHelper 中调用 onCreate。
有谁知道如何在 Robolectric 中配置/设置数据库版本?我正在使用 robolectric-1.1-jar-with-dependencies.jar 和 roboguice-2.0b4.jar。(到目前为止,读+写工作......)
谢谢
在我的情况下,Robolectric SQLiteOpenHelper 中的 getVersion 始终返回 0。因此,如果当前 DATABASE_VERSION 大于 0,则在 DBHelper 中调用 onCreate。
有谁知道如何在 Robolectric 中配置/设置数据库版本?我正在使用 robolectric-1.1-jar-with-dependencies.jar 和 roboguice-2.0b4.jar。(到目前为止,读+写工作......)
谢谢
Uhhhh 发现 Robolectric 有多酷 - 所以我必须回答我自己的问题。这是我所做的:
ShadowSQLiteDatabase.java:
@Implements(SQLiteDatabase.class)
public class ShadowSQLiteDatabase extends com.xtremelabs.robolectric.shadows.ShadowSQLiteDatabase {
@Implementation
public int getVersion() {
return 10;
}
}
InjectedTestRunner.java:
public class InjectedTestRunner extends RobolectricTestRunner {
...
@Override
protected void bindShadowClasses() {
Robolectric.bindShadowClass(ShadowSQLiteDatabase.class);
}
}
而已!