Search in sources :

Example 1 with FileDescriptorLocalUriFetcher

use of com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher in project glide by bumptech.

the class FileDescriptorLocalUriFetcherTest method testLoadResource_withNullFileDescriptor_callsLoadFailed.

@Test
public void testLoadResource_withNullFileDescriptor_callsLoadFailed() {
    Context context = RuntimeEnvironment.application;
    Uri uri = Uri.parse("file://nothing");
    ContentResolver contentResolver = context.getContentResolver();
    ContentResolverShadow shadow = (ContentResolverShadow) ShadowExtractor.extract(contentResolver);
    shadow.registerFileDescriptor(uri, null);
    FileDescriptorLocalUriFetcher fetcher = new FileDescriptorLocalUriFetcher(context.getContentResolver(), uri);
    fetcher.loadData(Priority.NORMAL, callback);
    verify(callback).onLoadFailed(isA(FileNotFoundException.class));
}
Also used : Context(android.content.Context) FileNotFoundException(java.io.FileNotFoundException) FileDescriptorLocalUriFetcher(com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher) ContentResolverShadow(com.bumptech.glide.tests.ContentResolverShadow) Uri(android.net.Uri) ContentResolver(android.content.ContentResolver) Test(org.junit.Test)

Example 2 with FileDescriptorLocalUriFetcher

use of com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher in project glide by bumptech.

the class FileDescriptorLocalUriFetcherTest method testLoadResource_returnsFileDescriptor.

@Test
public void testLoadResource_returnsFileDescriptor() throws Exception {
    Context context = RuntimeEnvironment.application;
    Uri uri = Uri.parse("file://nothing");
    ContentResolver contentResolver = context.getContentResolver();
    ContentResolverShadow shadow = (ContentResolverShadow) ShadowExtractor.extract(contentResolver);
    AssetFileDescriptor assetFileDescriptor = mock(AssetFileDescriptor.class);
    ParcelFileDescriptor parcelFileDescriptor = mock(ParcelFileDescriptor.class);
    when(assetFileDescriptor.getParcelFileDescriptor()).thenReturn(parcelFileDescriptor);
    shadow.registerFileDescriptor(uri, assetFileDescriptor);
    FileDescriptorLocalUriFetcher fetcher = new FileDescriptorLocalUriFetcher(context.getContentResolver(), uri);
    fetcher.loadData(Priority.NORMAL, callback);
    verify(callback).onDataReady(eq(parcelFileDescriptor));
}
Also used : Context(android.content.Context) AssetFileDescriptor(android.content.res.AssetFileDescriptor) ParcelFileDescriptor(android.os.ParcelFileDescriptor) FileDescriptorLocalUriFetcher(com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher) ContentResolverShadow(com.bumptech.glide.tests.ContentResolverShadow) Uri(android.net.Uri) ContentResolver(android.content.ContentResolver) Test(org.junit.Test)

Aggregations

ContentResolver (android.content.ContentResolver)2 Context (android.content.Context)2 Uri (android.net.Uri)2 FileDescriptorLocalUriFetcher (com.bumptech.glide.load.data.FileDescriptorLocalUriFetcher)2 ContentResolverShadow (com.bumptech.glide.tests.ContentResolverShadow)2 Test (org.junit.Test)2 AssetFileDescriptor (android.content.res.AssetFileDescriptor)1 ParcelFileDescriptor (android.os.ParcelFileDescriptor)1 FileNotFoundException (java.io.FileNotFoundException)1