public async Task <IActionResult> HadBrew([FromBody] UserHadBrewModel model) { var user = await _dataStore.GetAsync <User>(model.Id); if (user == null) { return(ReturnError(StatusCodes.Status404NotFound, "Invalid HadBrew Request", $"User {model.Id} not found")); } if (model.Id.ToString() != User.GetUserId()) { return(ReturnError(StatusCodes.Status403Forbidden, "Invalid HadBrew Request", "Logged in user cant update that round")); } var historyEntry = user.UpdateBrewCount(); if (historyEntry != null) { await _dataStore.CreateAsync(historyEntry); } user = await _dataStore.UpdateAsync(user); return(Ok(user)); }
public async Task AddBrewToUser() { var hadBrewModel = new UserHadBrewModel { Id = TestAuthUserId }; var updatebrewCountResponse = await PostAndAssert($"{RootApiPath}/hadbrew", hadBrewModel, _httpClient, true); var user = JsonConvert.DeserializeObject <User>(updatebrewCountResponse); Assert.NotNull(user?.SimpleId); Assert.Equal(TestAuthUserId, user.Id); Assert.True(user.CurrentDayCount > 1); }