@Test
public void effectPerformerInvokesConsumerAndPassesTheRequestedEffect() throws Exception {

  PublishSubject<String> upstream = PublishSubject.create();
  TestConsumer<String> consumer = new TestConsumer<>();
  upstream.compose(Transformers.fromConsumer(consumer)).subscribe();
  upstream.onNext("First Time");
  assertThat(consumer.getCurrentValue(), is("First Time"));
  upstream.onNext("Do it again!");
  assertThat(consumer.getCurrentValue(), is("Do it again!"));
}