public void PostASingleDrinkGivesAnError() { var requeststring = _fixture.RandomizerUrl + "/api/randomize"; var request = new RandomizePostRequest { list = "testsuite", user = "******", beverages = new List <string> { "beer" } }; var response = _fixture.RandomizerApi.PostASampleListWithBeverages(requeststring, request).Result as BaseErrorResponse; Assert.Equal(400, response.StatusCode); Assert.Contains("Errors occured when validating", response.UserError); }
public void PostWithAnInvalidObjectGivesAnError(string list, string user, string message) { var requeststring = _fixture.RandomizerUrl + "/api/randomize"; var request = new RandomizePostRequest { list = list, user = user, beverages = new List <string> { "beer", "wine" } }; var response = _fixture.RandomizerApi.PostASampleListWithBeverages(requeststring, request).Result as BaseErrorResponse; Assert.Equal(400, response.StatusCode); Assert.Contains(message, response.UserError); }
public void LongListsGetRandomized() { var requeststring = _fixture.RandomizerUrl + "/api/randomize"; var request = new RandomizePostRequest { list = "testsuite", user = "******", beverages = new List <string> { "drink1", "drink2", "drink3", "drink4", "drink5", "drink6", "drink7", "drink8", "drink9", "drink10", "drink11", "drink12", "drink13", "drink14", "drink15", "drink16", "drink17", "drink18" } }; var response = _fixture.BaseApiClient.GenericPostObject <RandomizePostResult>(requeststring, request).Result as RandomizePostResult; var drink = response.result; Assert.Contains(drink, request.beverages); Assert.Equal(200, response.StatusCode); }
public void PostingTwoDrinksReturnsARandomDrink() { var requeststring = _fixture.RandomizerUrl + "/api/randomize"; var request = new RandomizePostRequest { list = "testsuite", user = "******", beverages = new List <string> { "beer", "wine" } }; var response = _fixture.BaseApiClient.GenericPostObject <RandomizePostResult>(requeststring, request).Result as RandomizePostResult; var drink = response.result; Assert.Contains(drink, request.beverages); Assert.Equal(200, response.StatusCode); }
public async Task <BaseResponseModel> PostASampleListWithBeverages(string requeststring, RandomizePostRequest request) { try { var res = requeststring.PostJsonAsync(request).Result; var content = res.Content.ReadAsStringAsync().Result; var responseModel = new RandomizePostResult { result = content, StatusCode = (int)res.StatusCode }; return(responseModel); } catch (AggregateException e) { var flurlException = e.InnerException as FlurlHttpException; var responseModel = new BaseErrorResponse { StatusCode = (int)flurlException.Call.HttpStatus, ErrorMessage = flurlException.Message, UserError = flurlException.GetResponseString() }; return(responseModel); } }