@NonNull @Override public ModelLoader<byte[], InputStream> build(@NonNull MultiModelLoaderFactory multiFactory) { return new ByteArrayLoader<>(new Converter<InputStream>() { @Override public InputStream convert(byte[] model) { return new ByteArrayInputStream(model); } @Override public Class<InputStream> getDataClass() { return InputStream.class; } }); }
@Test public void testFetcherReturnsObjectReceivedFromConverter() throws IOException { byte[] data = "fake".getBytes("UTF-8"); Object expected = new Object(); when(converter.convert(eq(data))).thenReturn(expected); Preconditions.checkNotNull(loader.buildLoadData(data, 10, 10, options)).fetcher .loadData(Priority.HIGH, callback); verify(callback).onDataReady(eq(expected)); }
@Test public void testCanHandleByteArray() { byte[] data = new byte[10]; DataFetcher<Object> fetcher = Preconditions.checkNotNull(loader.buildLoadData(data, -1, -1, options)).fetcher; assertNotNull(fetcher); }
@NonNull @Override public ModelLoader<byte[], ByteBuffer> build(@NonNull MultiModelLoaderFactory multiFactory) { return new ByteArrayLoader<>(new Converter<ByteBuffer>() { @Override public ByteBuffer convert(byte[] model) { return ByteBuffer.wrap(model); } @Override public Class<ByteBuffer> getDataClass() { return ByteBuffer.class; } }); }
@Test public void testFetcherReturnsDataClassFromConverter() { when(converter.getDataClass()).thenReturn(Object.class); assertEquals( Object.class, Preconditions.checkNotNull(loader.buildLoadData(new byte[10], 10, 10, options)).fetcher .getDataClass()); } }
@Before public void setUp() { MockitoAnnotations.initMocks(this); loader = new ByteArrayLoader<>(converter); options = new Options(); }
@Override public ModelLoader<byte[], ByteBuffer> build(MultiModelLoaderFactory multiFactory) { return new ByteArrayLoader<>(new Converter<ByteBuffer>() { @Override public ByteBuffer convert(byte[] model) { return ByteBuffer.wrap(model); } @Override public Class<ByteBuffer> getDataClass() { return ByteBuffer.class; } }); }
@Override public ModelLoader<byte[], InputStream> build(MultiModelLoaderFactory multiFactory) { return new ByteArrayLoader<>(new Converter<InputStream>() { @Override public InputStream convert(byte[] model) { return new ByteArrayInputStream(model); } @Override public Class<InputStream> getDataClass() { return InputStream.class; } }); }