public void TestCreateOrUpdateOnlineQuotaAsync_ReturnsCorrectQuotaFrame() { const string surveyId = "surveyId"; var uri = new Uri(ServiceAddress, "Surveys/" + surveyId + "/Quota"); var quotaFrame = new QuotaFrame { Target = 10 }; var mockedNfieldConnection = new Mock <INfieldConnectionClient>(); var mockedHttpClient = CreateHttpClientMock(mockedNfieldConnection); mockedHttpClient .Setup(client => client.PutAsJsonAsync(uri, quotaFrame)) .Returns(CreateTask(HttpStatusCode.OK, new StringContent(JsonConvert.SerializeObject(quotaFrame)))); var target = new NfieldSurveysService(); target.InitializeNfieldConnection(mockedNfieldConnection.Object); var actualQuotaFrame = target.CreateOrUpdateOnlineQuotaAsync(surveyId, quotaFrame).Result; Assert.Equal(10, actualQuotaFrame.Target); }
public Task <QuotaFrame> CreateOrUpdateOnlineQuotaAsync(string surveyId, QuotaFrame quotaFrame) { var uri = new Uri(SurveysApi, $"{surveyId}/{QuotaControllerName}"); return(Client.PutAsJsonAsync(uri, quotaFrame) .ContinueWith( responseMessageTask => responseMessageTask.Result.Content.ReadAsStringAsync().Result) .ContinueWith( stringTask => JsonConvert.DeserializeObject <QuotaFrame>(stringTask.Result)) .FlattenExceptions()); }
public void TestOnlineQuotaQueryAsync_ServerReturnsQuery_ReturnsAppropriateQuota() { var quotaFrame = new QuotaFrame { Target = 10 }; var mockedNfieldConnection = new Mock <INfieldConnectionClient>(); var mockedHttpClient = CreateHttpClientMock(mockedNfieldConnection); mockedHttpClient .Setup(client => client.GetAsync(new Uri(ServiceAddress, "Surveys/1/Quota"))) .Returns(CreateTask(HttpStatusCode.OK, new StringContent(JsonConvert.SerializeObject(quotaFrame)))); var target = new NfieldSurveysService(); target.InitializeNfieldConnection(mockedNfieldConnection.Object); var actualQuotaFrame = target.OnlineQuotaQueryAsync("1").Result; mockedHttpClient.Verify(hc => hc.GetAsync(It.IsAny <Uri>()), Times.Once()); Assert.Equal(quotaFrame.Target, actualQuotaFrame.Target); }
public Task<QuotaFrame> CreateOrUpdateOnlineQuotaAsync(string surveyId, QuotaFrame quotaFrame) { string uri = string.Format(@"{0}{1}/{2}", SurveysApi.AbsoluteUri, surveyId, QuotaControllerName); return Client.PutAsJsonAsync(uri, quotaFrame) .ContinueWith( responseMessageTask => responseMessageTask.Result.Content.ReadAsStringAsync().Result) .ContinueWith( stringTask => JsonConvert.DeserializeObject<QuotaFrame>(stringTask.Result)) .FlattenExceptions(); }
public void TestOnlineQuotaQueryAsync_ServerReturnsQuery_ReturnsAppropriateQuota() { var quotaFrame = new QuotaFrame { Target = 10 }; var mockedNfieldConnection = new Mock<INfieldConnectionClient>(); var mockedHttpClient = CreateHttpClientMock(mockedNfieldConnection); mockedHttpClient .Setup(client => client.GetAsync(ServiceAddress + "surveys/1/quota")) .Returns(CreateTask(HttpStatusCode.OK, new StringContent(JsonConvert.SerializeObject(quotaFrame)))); var target = new NfieldSurveysService(); target.InitializeNfieldConnection(mockedNfieldConnection.Object); var actualQuotaFrame = target.OnlineQuotaQueryAsync("1").Result; mockedHttpClient.Verify(hc => hc.GetAsync(It.IsAny<string>()), Times.Once()); Assert.Equal(quotaFrame.Target, actualQuotaFrame.Target); }
public void TestCreateOrUpdateOnlineQuotaAsync_ReturnsCorrectQuotaFrame() { const string surveyId = "surveyId"; const string uri = ServiceAddress + "surveys/" + surveyId + "/quota"; var quotaFrame = new QuotaFrame { Target = 10 }; var mockedNfieldConnection = new Mock<INfieldConnectionClient>(); var mockedHttpClient = CreateHttpClientMock(mockedNfieldConnection); mockedHttpClient .Setup(client => client.PutAsJsonAsync(uri, quotaFrame)) .Returns(CreateTask(HttpStatusCode.OK, new StringContent(JsonConvert.SerializeObject(quotaFrame)))); var target = new NfieldSurveysService(); target.InitializeNfieldConnection(mockedNfieldConnection.Object); var actualQuotaFrame = target.CreateOrUpdateOnlineQuotaAsync(surveyId, quotaFrame).Result; Assert.Equal(10, actualQuotaFrame.Target); }