【问题标题】:Robolectric and SQLite.getVersionRobolectric 和 SQLite.getVersion
【发布时间】:2012-09-04 14:57:58
【问题描述】:

在我的例子中,Robolectric SQLiteOpenHelper 中的 getVersion 总是返回 0。 因此,如果当前 DATABASE_VERSION 大于 0,则在 DBHelper 中调用 onCreate。

有谁知道如何在 Robolectric 中配置/设置数据库版本? 我正在使用 robolectric-1.1-jar-with-dependencies.jar 和 roboguice-2.0b4.jar。 (到目前为止,读+写工作......)

谢谢

【问题讨论】:

  • 您解决了吗?如果是,请选择一个答案。

标签: java android unit-testing roboguice robolectric


【解决方案1】:

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);
    }
}

就是这样!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    • 2012-11-30
    • 1970-01-01
    相关资源
    最近更新 更多