Birim sınama için Robolectric
kullanıyorum ve Robolectric
kavanoğumu 1.2'den 2.2'ye güncelleştirdim ve bu yeni sürümde gölge sınıflarına nasıl bağlanacağını anlamaya çalışıyorum.Robolectric 2.2 kullanırken nasıl gölge sınıfı eklenir?
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;
}
}
Ama şimdi hiçbir bindShadowClass API olduğunu düşünüyorum: İşte daha önce ne yaptığını olduğunu. AddShadowClass kullanmayı denedim ancak bir gölge sınıfı eklemek için doğru yol olup olmadığından emin değilim. Sadece
ShadowMap a = new ShadowMap.Builder().addShadowClass(ShadowLog.class).build();
kullanabilir miyim nasıl oluşturup classHandler benim Günlüğü sınıf yöntemlerine erişmek için kullanabilirsiniz, ben bu shadowmap ve evet eğer kullanan bir classHandler veya bir şey yaratmak gerekiyor mu?
@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;
}
}
Sonra Log.i("LogTest", "log message ");
Teşekkür Abhi
Gölge sınıflarının bağlanması artık @Config ek açıklamalarıyla değiştirilmiştir. Örnek: @Config (shadows = {ShadowLog.class}) –
Bu yanıtı @Abhi kabul etmelisiniz – Snicolas