    @Test
    public void requestArticleObservable_returnsObjectWithArticle() throws Exception {

        // Given there is a web server with some prepared responses
        final String articleId = "bnl-vkn-20161117-7352758";
        final HttpUrl baseUrl = prepareAndStartServerToReturnJsonFromFile(mServer,
                "article(ws.blendle.com_item_" + articleId + ").json");

        // When I make a request
        final ArticlesServer articlesServer = new ArticlesServer(baseUrl, RxJava2CallAdapterFactory.
                createWithScheduler(Schedulers.trampoline()));
        final Single<ArticleResource> articleObservable = articlesServer
                .requestArticle(articleId);
        final TestObserver<ArticleResource> testObserver = new TestObserver<>();
        articleObservable.subscribe(testObserver);

        // Then the request is correctly received
        testObserver.await(2, TimeUnit.SECONDS);
        final List<Object> events = testObserver.getEvents().get(0);
        testObserver.assertNoErrors();
        assertTrue("There should only one event with the request results", events.size() == 1);
        final ArticleResource article = (ArticleResource) events.get(0);
        assertEquals(articleId, article.id());
    }