public void TestCreateOrUpdateQuotaAsync_Normal_CorrectQuotaFrame()
{
const string surveyId = "surveyId";
var quota = new QuotaLevel(true)
{
Target = 10,
GrossTarget = 15,
Attributes =
new Collection<QuotaAttribute>
{
new QuotaAttribute {Name = "Attribute", IsSelectionOptional = true, OdinVariable = "var"}
}
};
var mockedNfieldConnection = new Mock<INfieldConnectionClient>();
var mockedHttpClient = CreateHttpClientMock(mockedNfieldConnection);
mockedHttpClient
.Setup(client => client.PutAsJsonAsync(It.IsAny<string>(), It.IsAny<QuotaLevel>()))
.Returns(CreateTask(HttpStatusCode.OK, new StringContent("")));
var target = new NfieldSurveysService();
target.InitializeNfieldConnection(mockedNfieldConnection.Object);
target.CreateOrUpdateQuotaAsync(surveyId, quota).Wait();
mockedHttpClient.Verify(hc => hc.PutAsJsonAsync(It.IsAny<string>(), quota), Times.Once());
}