public void SpeciesObservationSearchCriteriaAPIPost() { using (ShimsContext.Create()) { // Arrange var shimHttpClient = new ShimHttpClient(httpClient); // Act shimHttpClient.PostAsyncUriHttpContent = (uri, content) => { var responseTask = new TaskCompletionSource <HttpResponseMessage>(); var httpResponse = new HttpResponseMessage { StatusCode = HttpStatusCode.Created, Content = new ObjectContent(typeof(MySettings), new MySettings(), new JsonMediaTypeFormatter()) }; responseTask.SetResult(httpResponse); return(responseTask.Task); }; httpResponseMessage = httpClient.PostAsync(SPECIES_OBSERVATION_SEARCH_CRITERIA_API_URI, null).Result; // Assert Assert.IsNotNull(httpResponseMessage); Assert.IsTrue(httpResponseMessage.IsSuccessStatusCode); Assert.AreEqual(httpResponseMessage.StatusCode, HttpStatusCode.Created); result = javaScriptSerializer.Deserialize <MySettings>(httpResponseMessage.Content.ReadAsStringAsync().Result); Assert.IsNotNull(result); } }
public void SpeciesObservationSearchCriteriaAPIDelete() { using (ShimsContext.Create()) { // Arrange var shimHttpClient = new ShimHttpClient(httpClient); // Act shimHttpClient.DeleteAsyncUri = (uri) => { var responseTask = new TaskCompletionSource <HttpResponseMessage>(); var httpResponse = new HttpResponseMessage { StatusCode = HttpStatusCode.NotImplemented }; responseTask.SetResult(httpResponse); return(responseTask.Task); }; httpResponseMessage = httpClient.DeleteAsync(SPECIES_OBSERVATION_SEARCH_CRITERIA_API_URI).Result; // Assert Assert.IsNotNull(httpResponseMessage); Assert.IsFalse(httpResponseMessage.IsSuccessStatusCode); Assert.AreEqual(httpResponseMessage.StatusCode, HttpStatusCode.NotImplemented); } }
private ShimHttpClient Get_MockGetClient(bool successCode) { var expectedResponse = new ShimHttpResponseMessage(); var client = new ShimHttpClient(); expectedResponse.IsSuccessStatusCodeGet = () => successCode; client.GetAsyncString = (uri) => Task.FromResult <HttpResponseMessage>(expectedResponse); return(client); }
public void GetAtomSyndicationFeed_Success() { using (ShimsContext.Create()) { // Arrange var request = new HttpRequestMessage(); var client = new ShimHttpClient(); client.GetStringAsyncString = (uri) => Task.FromResult(GetMockSyndiactionFeed()); client.DefaultRequestHeadersGet = () => request.Headers; // Act var feed = Sfa.Core.Net.Http.HttpClientExtensions.GetAtomSyndicationFeed(client, "test"); // Assert Assert.AreEqual("Sample Feed Title", feed.Title.Text); Assert.AreEqual(1, feed.Items.Count()); } }
public void SpeciesObservationSearchCriteriaAPIPut() { using (ShimsContext.Create()) { // Arrange var shimHttpClient = new ShimHttpClient(httpClient); MySettings mySettings = new MySettings(); mySettings.Filter.Taxa.IsActive = true; mySettings.Filter.Taxa.TaxonIds.Add(34); MySettingsWebAPI mySettingsWebAPI = new MySettingsWebAPI { Filter = mySettings.Filter }; // Act shimHttpClient.PutAsyncUriHttpContent = (uri, content) => { SessionHandler.MySettings.Filter = mySettingsWebAPI.Filter; var responseTask = new TaskCompletionSource <HttpResponseMessage>(); var httpResponse = new HttpResponseMessage { StatusCode = HttpStatusCode.OK, Content = new ObjectContent(typeof(MySettings), SessionHandler.MySettings, new JsonMediaTypeFormatter()) }; responseTask.SetResult(httpResponse); return(responseTask.Task); }; httpResponseMessage = httpClient.PutAsync(SPECIES_OBSERVATION_SEARCH_CRITERIA_API_URI, null).Result; // Assert Assert.IsNotNull(httpResponseMessage); Assert.IsTrue(httpResponseMessage.IsSuccessStatusCode); result = javaScriptSerializer.Deserialize <MySettings>(httpResponseMessage.Content.ReadAsStringAsync().Result); Assert.IsNotNull(result); Assert.AreEqual(mySettings.Filter.Taxa.TaxonIds[0], result.Filter.Taxa.TaxonIds[0]); } }