public async Task ModifyAsync() { var adminId = (await UserUtils.GetAdmin()).Id; var stuId = (await UserUtils.GetStudent()).Id; var contest = new Data.Contest { Name = Guid.NewGuid().ToString(), UserId = adminId }; var id = await contestService.CreateContestAsync(contest); Assert.AreNotEqual(0, id); var studentResult = await contestService.QueryContestAsync(stuId); Assert.IsTrue(studentResult.Any(i => i.Id == id && i.Name == contest.Name)); var newName = Guid.NewGuid().ToString(); contest.Name = newName; await contestService.UpdateContestAsync(contest); studentResult = await contestService.QueryContestAsync(stuId); Assert.IsTrue(studentResult /*.Cacheable()*/.Any(i => i.Id == id && i.Name == contest.Name)); await contestService.RemoveContestAsync(id); studentResult = await contestService.QueryContestAsync(stuId); Assert.IsFalse(studentResult /*.Cacheable()*/.Any(i => i.Id == id)); }
public async Task <IActionResult> UpdateContest([FromRoute] Guid id, [FromBody] CreateOrUpdateContestRequest request) { Guid.TryParse(User.FindFirst("id")?.Value, out var userId); var updatedContest = await _contestService.UpdateContestAsync(id, userId, request); if (updatedContest != null) { return(Ok(_mapper.Map <ContestShortResponse>(updatedContest))); } return(NotFound()); }