// Path: 2016-06-15_hot_and_cold/app/src/test/java/com/gdgand/rxjava/rxjavasample/hotandcold/TestSchedulerProxy.java
// public class TestSchedulerProxy {
// 
//     private static final TestScheduler SCHEDULER = new TestScheduler();
//     private static final TestSchedulerProxy INSTANCE = new TestSchedulerProxy();
// 
//     static {
//         try {
//             RxJavaPlugins.getInstance().registerSchedulersHook(new RxJavaSchedulersHook() {
//                 @Override
//                 public Scheduler getIOScheduler() {
//                     return SCHEDULER;
//                 }
// 
//                 @Override
//                 public Scheduler getComputationScheduler() {
//                     return SCHEDULER;
//                 }
// 
//                 @Override
//                 public Scheduler getNewThreadScheduler() {
//                     return SCHEDULER;
//                 }
//             });
// 
//             RxAndroidPlugins.getInstance().registerSchedulersHook(new RxAndroidSchedulersHook() {
//                 @Override
//                 public Scheduler getMainThreadScheduler() {
//                     return SCHEDULER;
//                 }
//             });
//         } catch (IllegalStateException e) {
//             throw new IllegalStateException("Schedulers class already initialized. " +
//                     "Ensure you always use the TestSchedulerProxy in unit tests.");
//         }
//     }
// 
//     public static TestSchedulerProxy get() {
//         return INSTANCE;
//     }
// 
//     public void advanceBy(long delayTime, TimeUnit unit) {
//         SCHEDULER.advanceTimeBy(delayTime, unit);
//     }
// 
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/main/java/com/gdgand/rxjava/rxjavasample/hotandcold/data/imgur/ImgurApi.java
// public interface ImgurApi {
// 
// 	@GET("/3/topics/defaults")
// 	Observable<TopicResponse> defaultTopics();
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/main/java/com/gdgand/rxjava/rxjavasample/hotandcold/data/imgur/Topic.java
// public class Topic {
//     private long id;
// 
//     private String name;
// 
//     private String description;
// 
//     private TopPost topPost;
// 
//     public long getId() {
//         return id;
//     }
// 
//     public void setId(long id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public TopPost getTopPost() {
//         return topPost;
//     }
// 
//     public void setTopPost(TopPost topPost) {
//         this.topPost = topPost;
//     }
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/main/java/com/gdgand/rxjava/rxjavasample/hotandcold/data/imgur/TopicResponse.java
// public class TopicResponse {
// 
// 	private List<Topic> data;
// 
// 	public void setData(List<Topic> data) {
// 		this.data = data;
// 	}
// 
// 	public List<Topic> getData() {
// 		return data;
// 	}
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/test/java/com/gdgand/rxjava/rxjavasample/hotandcold/TestTransformer.java
// public static <T> Observable.Transformer<T, T> pass() {
//     return observable -> observable;
// }


import com.google.common.collect.Lists;
import com.gdgand.rxjava.rxjavasample.hotandcold.TestSchedulerProxy;
import com.gdgand.rxjava.rxjavasample.hotandcold.data.imgur.ImgurApi;
import com.gdgand.rxjava.rxjavasample.hotandcold.data.imgur.Topic;
import com.gdgand.rxjava.rxjavasample.hotandcold.data.imgur.TopicResponse;
import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import java.util.List;
import java.util.concurrent.TimeUnit;
import rx.Observable;
import static com.gdgand.rxjava.rxjavasample.hotandcold.TestTransformer.pass;
import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
package com.gdgand.rxjava.rxjavasample.hotandcold.presentation.mvp.imgur;







@RunWith(MockitoJUnitRunner.class)
@Ignore("java.lang.IllegalStateException at ImgurMvpPresenterTest.java:52")
public class ImgurMvpPresenterTest {

	@Mock
	ImgurApi imgurApi;

	@Mock
	ImgurMvpView view;

	@InjectMocks
	ImgurMvpPresenter presenter;

	@Before
	public void setup() {
		presenter.attachView(view);
		given(view.bind()).willReturn(pass());
		given(view.injectProgress()).willReturn(pass());
	}

	@After
	public void finish() {
		presenter.detachView();
	}

// Path: 2016-06-15_hot_and_cold/app/src/test/java/com/gdgand/rxjava/rxjavasample/hotandcold/TestSchedulerProxy.java
// public class TestSchedulerProxy {
// 
//     private static final TestScheduler SCHEDULER = new TestScheduler();
//     private static final TestSchedulerProxy INSTANCE = new TestSchedulerProxy();
// 
//     static {
//         try {
//             RxJavaPlugins.getInstance().registerSchedulersHook(new RxJavaSchedulersHook() {
//                 @Override
//                 public Scheduler getIOScheduler() {
//                     return SCHEDULER;
//                 }
// 
//                 @Override
//                 public Scheduler getComputationScheduler() {
//                     return SCHEDULER;
//                 }
// 
//                 @Override
//                 public Scheduler getNewThreadScheduler() {
//                     return SCHEDULER;
//                 }
//             });
// 
//             RxAndroidPlugins.getInstance().registerSchedulersHook(new RxAndroidSchedulersHook() {
//                 @Override
//                 public Scheduler getMainThreadScheduler() {
//                     return SCHEDULER;
//                 }
//             });
//         } catch (IllegalStateException e) {
//             throw new IllegalStateException("Schedulers class already initialized. " +
//                     "Ensure you always use the TestSchedulerProxy in unit tests.");
//         }
//     }
// 
//     public static TestSchedulerProxy get() {
//         return INSTANCE;
//     }
// 
//     public void advanceBy(long delayTime, TimeUnit unit) {
//         SCHEDULER.advanceTimeBy(delayTime, unit);
//     }
// 
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/main/java/com/gdgand/rxjava/rxjavasample/hotandcold/data/imgur/ImgurApi.java
// public interface ImgurApi {
// 
// 	@GET("/3/topics/defaults")
// 	Observable<TopicResponse> defaultTopics();
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/main/java/com/gdgand/rxjava/rxjavasample/hotandcold/data/imgur/Topic.java
// public class Topic {
//     private long id;
// 
//     private String name;
// 
//     private String description;
// 
//     private TopPost topPost;
// 
//     public long getId() {
//         return id;
//     }
// 
//     public void setId(long id) {
//         this.id = id;
//     }
// 
//     public String getName() {
//         return name;
//     }
// 
//     public void setName(String name) {
//         this.name = name;
//     }
// 
//     public String getDescription() {
//         return description;
//     }
// 
//     public void setDescription(String description) {
//         this.description = description;
//     }
// 
//     public TopPost getTopPost() {
//         return topPost;
//     }
// 
//     public void setTopPost(TopPost topPost) {
//         this.topPost = topPost;
//     }
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/main/java/com/gdgand/rxjava/rxjavasample/hotandcold/data/imgur/TopicResponse.java
// public class TopicResponse {
// 
// 	private List<Topic> data;
// 
// 	public void setData(List<Topic> data) {
// 		this.data = data;
// 	}
// 
// 	public List<Topic> getData() {
// 		return data;
// 	}
// }
// 
// Path: 2016-06-15_hot_and_cold/app/src/test/java/com/gdgand/rxjava/rxjavasample/hotandcold/TestTransformer.java
// public static <T> Observable.Transformer<T, T> pass() {
//     return observable -> observable;
// }


// Path: 2016-06-15_hot_and_cold/app/src/test/java/com/gdgand/rxjava/rxjavasample/hotandcold/presentation/mvp/imgur/ImgurMvpPresenterTest.java
import com.google.common.collect.Lists;
import com.gdgand.rxjava.rxjavasample.hotandcold.TestSchedulerProxy;
import com.gdgand.rxjava.rxjavasample.hotandcold.data.imgur.ImgurApi;
import com.gdgand.rxjava.rxjavasample.hotandcold.data.imgur.Topic;
import com.gdgand.rxjava.rxjavasample.hotandcold.data.imgur.TopicResponse;
import org.junit.After;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.runners.MockitoJUnitRunner;
import java.util.List;
import java.util.concurrent.TimeUnit;
import rx.Observable;
import static com.gdgand.rxjava.rxjavasample.hotandcold.TestTransformer.pass;
import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;

package com.gdgand.rxjava.rxjavasample.hotandcold.presentation.mvp.imgur;







@RunWith(MockitoJUnitRunner.class)
@Ignore("java.lang.IllegalStateException at ImgurMvpPresenterTest.java:52")
public class ImgurMvpPresenterTest {

	@Mock
	ImgurApi imgurApi;

	@Mock
	ImgurMvpView view;

	@InjectMocks
	ImgurMvpPresenter presenter;

	@Before
	public void setup() {
		presenter.attachView(view);
		given(view.bind()).willReturn(pass());
		given(view.injectProgress()).willReturn(pass());
	}

	@After
	public void finish() {
		presenter.detachView();
	}

	TestSchedulerProxy proxy = TestSchedulerProxy.get();