  @Test public void realResponseTest() {

    SearchItem item = new SearchItem();
    item.setLogin("octocat");
    item.setAvatarUrl("https://avatars.githubusercontent.com/u/583231?v\u003d3");

    Retrofit retrofit = new Retrofit.Builder()
        .baseUrl("https://api.github.com")
        .addCallAdapterFactory(RxJavaCallAdapterFactory.create())
        .addConverterFactory(GsonConverterFactory.create())
        .build();

    TestSubscriber<SearchItem> subscriber = new TestSubscriber<>();

    new GitHubInteractor(retrofit, cache).searchUsers("octocat")
        .flatMap(new Func1<SearchResult, Observable<SearchItem>>() {
          @Override public Observable<SearchItem> call(SearchResult result) {
            return Observable.from(result.getItems());
          }
        })
        .first()
        .toBlocking() // the main difference
        .subscribe(subscriber);

    subscriber.assertValue(item);
    subscriber.assertNoErrors();
    subscriber.assertCompleted();
  }