Намеренный метод-заглушку вызывается до фактического выполнения кода
intending(hasAction(MediaStore.ACTION_IMAGE_CAPTURE)).respondWith(createImageCaptureActivityResultStub();
private createImageCaptureActivityResultStub() {
//change value of imageUri
Uri imageUri = FileProvider.getUriForFile(context.getApplicationContext(),
context.getApplicationContext().getPackageName() + ".fileprovider", destination);
MemberManipulator.setFieldValue(Utility.getActivityInstance(), "imageUri", imageUri);
}
Внутри createImageCaptureActivityResultStub()
, Я манипулирую значением переменной экземпляра imageUri
, Этот метод-заглушку должен был быть вызван при выполнении этой строки, но вызывается только изначально. Это меняет значение imageUri
до достижения этой строки кода.
startActivityForResult(intent, AppConstants.REQUEST_CODE_CAMERA);