私はRobolectric
単体テストに使用しており、Robolectric
jar を 1.2 から 2.2 に更新し、この新しいバージョンでシャドウ クラスをバインドする方法を見つけようとしています。これは私が以前やっていたことです:
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 ");
ありがとうございます