public IActionResult DoUntil(string what, [FromBody] DoU dou) { int resultNumber = 0; if (dou == null) { return(Json(new { error = "Please provide a number!" })); } if (string.IsNullOrEmpty(what)) { return(NotFound()); } if (what == "sum") { for (int i = 0; i <= dou.Until; i++) { resultNumber += i; } } if (what == "factor") { resultNumber = 1; for (int i = 1; i <= dou.Until; i++) { resultNumber *= i; } } return(Json(new { result = $"{resultNumber}" })); }
public async Task WithoutWhat() { var usedUntil = new DoU { Until = 5, }; var convertedUsedUntil = JsonConvert.SerializeObject(usedUntil); var data = new StringContent(convertedUsedUntil.ToString(), encoding: Encoding.UTF8, mediaType: "application/json"); var response = await Client.PostAsync("dountil", data); var responseString = await response.Content.ReadAsStringAsync(); Assert.Equal(HttpStatusCode.NotFound, response.StatusCode); }
public async Task ReturnResult15WhenSum5() { var usedUntil = new DoU { Until = 5, }; var convertedUsedUntil = JsonConvert.SerializeObject(usedUntil); var data = new StringContent(convertedUsedUntil.ToString(), encoding: Encoding.UTF8, mediaType: "application/json"); var response = await Client.PostAsync("dountil/sum", data); var responseString = await response.Content.ReadAsStringAsync(); string result = "{\"result\":\"15\"}"; Assert.Equal(result, responseString); }