gpt4 book ai didi

robolectric - 使用 Robolectric 2.2 时如何添加阴影类?

转载 作者:行者123 更新时间:2023-12-04 04:06:02 27 4
gpt4 key购买 nike

我正在使用 Robolectric用于我的单元测试并更新了我的Robolectric从 1.2 到 2.2 的 jar 并试图弄清楚如何在这个新版本中绑定(bind)影子类。这是我之前在做的:

Robolectric.bindShadowClass(ShadowLog.class);

@Implements(Log.class)
public static class ShadowLog {
public static int i(java.lang.String tag, java.lang.String msg) {
System.out.println("[" + tag + "] " + msg);
return 0;
}
}

但我认为现在没有可用的 bindShadowClass API。我尝试使用 addShadowClass 但我不确定这是否是添加阴影类的正确方法。我可以用吗
ShadowMap a = new ShadowMap.Builder().addShadowClass(ShadowLog.class).build();

我是否需要使用此 shadowMap 创建一个 classHandler 或其他东西,如果是,我如何创建和使用该 classHandler 来访问我的 Log 类方法?
@Implements(Log.class)
public static class ShadowLog {
public static int i(java.lang.String tag, java.lang.String msg) {
System.out.println("[" + tag + "] " + msg);
return 0;
}
}

然后 Log.i("LogTest", "log message ");
谢谢
阿比

最佳答案

影子类的绑定(bind)现在替换为 @Config注释。

例子:

@Config(shadows = {ShadowLog.class})

另见 my answer to this other questionthe Robolectric blog .

关于robolectric - 使用 Robolectric 2.2 时如何添加阴影类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17176526/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com