// Path: base/src/main/java/com/tobi/movies/Converter.java
// public interface Converter<T, R> {
// 
//     R convert(T input);
// }
// 
// Path: app/src/main/java/com/tobi/movies/misc/Threading.java
// public enum Threading {
//     SUBSCRIBER,
//     OBSERVER
// }


import android.support.annotation.NonNull;
import com.google.common.collect.Lists;
import com.tobi.movies.Converter;
import com.tobi.movies.misc.Threading;
import java.util.HashMap;
import java.util.List;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
import rx.Observable;
import rx.Scheduler;
import rx.observers.TestSubscriber;
import rx.schedulers.Schedulers;
import static org.mockito.Mockito.when;
package com.tobi.movies.popularstream;







public class PopularStreamRepositoryTest {

    private static final long FIRST_MOVIE_ID = 1L;
    private static final long SECOND_MOVIE_ID = 2L;
    private static final String FIRST_POSTER_PATH = "first path";
    private static final String SECOND_POSTER_PATH = "second path";

    @Rule
    public MockitoRule rule = MockitoJUnit.rule();

    @Mock
    private PopularStreamApiDatasource apiDataSource;

    @Mock
    private Converter<ApiMoviePoster, MoviePoster> posterConverter;

    private PopularStreamRepository streamRepository;

    @Before
    public void setUp() throws Exception {
// Path: base/src/main/java/com/tobi/movies/Converter.java
// public interface Converter<T, R> {
// 
//     R convert(T input);
// }
// 
// Path: app/src/main/java/com/tobi/movies/misc/Threading.java
// public enum Threading {
//     SUBSCRIBER,
//     OBSERVER
// }


// Path: app/src/test/java/com/tobi/movies/popularstream/PopularStreamRepositoryTest.java
import android.support.annotation.NonNull;
import com.google.common.collect.Lists;
import com.tobi.movies.Converter;
import com.tobi.movies.misc.Threading;
import java.util.HashMap;
import java.util.List;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnit;
import org.mockito.junit.MockitoRule;
import rx.Observable;
import rx.Scheduler;
import rx.observers.TestSubscriber;
import rx.schedulers.Schedulers;
import static org.mockito.Mockito.when;

package com.tobi.movies.popularstream;







public class PopularStreamRepositoryTest {

    private static final long FIRST_MOVIE_ID = 1L;
    private static final long SECOND_MOVIE_ID = 2L;
    private static final String FIRST_POSTER_PATH = "first path";
    private static final String SECOND_POSTER_PATH = "second path";

    @Rule
    public MockitoRule rule = MockitoJUnit.rule();

    @Mock
    private PopularStreamApiDatasource apiDataSource;

    @Mock
    private Converter<ApiMoviePoster, MoviePoster> posterConverter;

    private PopularStreamRepository streamRepository;

    @Before
    public void setUp() throws Exception {
        HashMap<Threading, Scheduler> schedulerHashMap = new HashMap<>();