예제 #1
0
        private static RandomJokeResponse GetRandomJokeDeserializedResponse(HttpStatusCode statusCode = HttpStatusCode.OK, string category = null, string jokeText = null)
        {
            var uri         = category == null ? RandomJokesUri : RandomJokesWithCategoryUri + category;
            var handlerMock = CreateMessageHandlerMock(statusCode, jokeText ?? BuildRandomJokeResponse(), uri);
            var feed        = new ChuckNorrisJsonFeed(handlerMock.Object);

            return(feed.GetRandomJokeResponse(category));
        }
        public void GetRandomJokeResponseWorksAgainstLiveApi()
        {
            var feed    = new ChuckNorrisJsonFeed();
            var jokeDto = feed.GetRandomJokeResponse();

            Assert.IsNotNull(jokeDto, "Returned DTO was null.");

            // Since we don't know what the live server will return, just do a very simple test.
            StringAssert.Contains("Chuck Norris", jokeDto.JokeText);
        }
        public void GetRandomJokeWithBadCategoryAgainstLiveApiGetsException()
        {
            var feed = new ChuckNorrisJsonFeed();

            Assert.That(() => feed.GetRandomJokeResponse("badCategory"), Throws.TypeOf <JsonFeedException>());
        }