class PostMessage extends UseCase<MessageDto, Void, MessageRepository> {

    @Inject
    public PostMessage(MessageRepository repository,
                       Messenger messenger,
                       @Named("Thread") Scheduler threadScheduler,
                       @Named("PostExecution") Scheduler postExecutionScheduler) {
        super(repository, messenger, threadScheduler, postExecutionScheduler);
    }

}

class PostMessageTest extends UseCase<MessageDto, Void, MessageRepository> {

    private final MessageDto testMessage;

    @Test
    @Override
    public void testBuildUseCaseObservable() {

        testBuildUseCaseObservable(testMessage, new Action0() {
            @Override
            public void call() {
                verify(mockRepository).postMessage(testMessage, mockMessenger);
            }
        });
    }

}