public void ParseResponseTest() { var response = new HttpResponseMessage(); response.StatusCode = System.Net.HttpStatusCode.OK; response.Content = new StringContent(SearchResponse); var search = new GoodreadsApiBookSearch(); var result = search.ParseResponse(response); Assert.AreEqual(2, result.NumResults); Assert.AreEqual(375802, result.BestMatch.BookID); Assert.AreEqual("Orson Scott Card", result.BestMatch.Author); Assert.AreEqual("Ender's Game (Ender's Saga, #1)", result.BestMatch.Title); }
public void CreateRequestTest() { var search = new GoodreadsApiBookSearch() { ApiKey = "123", BaseUrl = "https://abc.invalid/search.xml", Query = "x y z" }; var request = search.CreateRequest(); var uri = request.RequestUri; Assert.AreEqual(HttpMethod.Get, request.Method); Assert.AreEqual("https", uri.Scheme); Assert.AreEqual("abc.invalid", uri.Host); Assert.AreEqual("/search.xml", uri.AbsolutePath); var query = request.RequestUri.Query; Assert.IsTrue(query.Contains("q=x%20y%20z")); Assert.IsTrue(query.Contains("key=123")); }