У меня есть класс с обычным методом и нативным методом, который я хотел бы издеваться:Mock нативного метода с тенью классом Robolectric Пользовательской
public class MyClass {
public int regularMethod() { ... }
public void native myNativeMethod();
}
Я использую Robolectric, чтобы проверить мое приложение, и я я пытаюсь найти способ издеваться над этими методами, используя custom shadow class. Вот моя тень класс:
@Implements(MyClass.class)
public class MyShadowClass {
@Implementation
public int regularMethod { return 0; }
@Implementation
public void nativeMethod { ... }
}
Вот мой тест:
@RunWith(RobolectricTestRunner.class)
@Config(manifest = Config.NONE)
public class MyTest {
@Test
@Config(shadows = { MyShadowClass.class })
public void test() {
MyClass obj = new MyClass();
Assert.assertEquals(obj.regularMethod(), 0);
}
}
Это не работает, как я думал. Издевательство над собственным методом может быть растянуто с классом Shadow, но я думал, что использование пользовательского теневого класса таким образом приведет к вызову кода теневого класса.
Является ли это по-прежнему верно в RoboElectric V3? –
он не работает для версии 3. + –