public void SaveHealthScoreTest_GivenValidHealthScore_ExpectSuccess() { string url = "api/SaveHealthScore"; var healthScore = new HealthScoreDetails { UserId = "*****@*****.**", BloodPressure = "1", Weight = 150, Id = 1 }; var json = JsonConvert.SerializeObject(healthScore); var content = new StringContent(json, Encoding.UTF8, "application/json"); var httpResponse = _fixture.Client.PostAsync(url, content).Result; httpResponse.StatusCode.Should().Be(HttpStatusCode.OK); var jsonResponse = httpResponse.Content.ReadAsStringAsync().Result; var details = JsonConvert.DeserializeObject <Status>(jsonResponse); details.Should().NotBeNull(); details.StatusCode.Should().Be(Status.SUCCESS_STATUS_CODE); details.StatusDesc.Should().Be(Status.SUCCESS_STATUS_TEXT); }
public async Task <IActionResult> SaveHealthScore( [HttpTrigger(AuthorizationLevel.Anonymous, "post")] HealthScoreDetails details, HttpRequest req, ILogger log) { log.LogInformation($"C# HTTP {nameof(SaveHealthScore)} trigger function processed a request."); var result = await _manager.SaveAsync(details); return(new OkObjectResult(result)); }
public async Task <Status> SaveAsync(HealthScoreDetails details) { //details invalid..missing something if (!details.IsValid()) { //return error return(details.status); } HealthScore savedEntity; Status result; //look for the exisitng var existing = (await _repository.AsQueryAsync()).FirstOrDefault(p => p.Id == details.Id); //no exisiting found..so we add him if (existing == null) { savedEntity = Mapper.Map <HealthScore>(details); _repository.AddAsync(savedEntity); //success result = Status.SUCCESS; return(result); } //update the exisiting savedEntity = Mapper.Map <HealthScoreDetails, HealthScore>(details, existing); savedEntity.DateModified = DateTime.UtcNow; await _repository.UpdateAsync(savedEntity); //success result = Status.SUCCESS; return(result); }