이미지 용 MediaStore를 쿼리하는 클래스가 있습니다. 예를 들어 someContentResolver.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, ...)
과 같은 코드가 있습니다. 다른 것들 중에서도 MediaStore에 대한 내 쿼리가 정확하다는 것을 테스트하고 싶습니다. 나는 내 테스트에서 지금까지했던 어떤robolectric를 사용하여 MediaStore를 테스트 이중으로 대체 할 수 있습니까?
은 이것이다 :
ContentResolver resolver = new Activity().getContentResolver();
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.DATA,
"/fake/path/file1.jpg");
values.put(MediaStore.Images.Media.DATE_ADDED,
fakeTime.getTime());
resolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
values);
나는 그것에 쿼리를 수행 내 클래스에이 해결을 주입. 그러나 쿼리는 null을 반환합니다. 이 게시물보고 : ShadowContentResolver를 사용하여 콘텐츠 공급자를 등록 말한다 http://ikaruga2.wordpress.com/2013/07/29/roboelectric-and-contentresolverscontentproviders/을, 그래서 뭔가 같은 :
ShadowContentResolver.registerProvider(MediaStore.AUTHORITY, <SOMETHING_GOES_HERE>);
하지만 콘텐츠 공급자에 대한 넣어 모르겠어요. 어쩌면 MediaStore
개체를 사용합니까? 아니요, ContentProvider
이 아닙니다. 아마도 그것은 MediaProvider
입니까? 웬일인지 기호를 확인할 수 없습니다.
이 시점에서 저는 이것이 원격으로 정확한 접근법이라는 사실에 심각한 의문을 가지고 있습니다. 누군가 나를 올바른 방향으로 인도 할 수 있습니까?
는 Robolectric 2.4 스냅 샷 및 API 나는 미디어 스토어 MediaStore와 유사한 문제가 된 19
아직 해결 방법을 찾았습니까? –
@SebastianRoth 아니요, 아닙니다. – Kevin