public async Task UpdateDifficulties() { // Arrange var difficulty = context.Difficulties.FirstOrDefault(d => d.Id == 1); difficulty.Name = string.Format("{0} UPDATED!", difficulty.Name); // Act var result = await sut.Update(difficulty); // Assert Assert.That(result.Success, Is.True); Assert.That(result.Object, Is.InstanceOf <Difficulty>()); Assert.That(((Difficulty)result.Object).Name, Is.EqualTo(difficulty.Name)); }
public async Task <IBaseResult> UpdateDifficulty( int id, IUpdateDifficultyRequest updateDifficultyRequest) { if (updateDifficultyRequest == null) { throw new ArgumentNullException(nameof(updateDifficultyRequest)); } var result = new BaseResult(); if (id == 0) { result.Success = false; result.Message = DifficultiesMessages.DifficultiesNotFoundMessage; return(result); } try { var response = await difficultiesRepository.GetById(id); if (response.Success) { ((Difficulty)response.Object).Name = updateDifficultyRequest.Name; ((Difficulty)response.Object).DisplayName = updateDifficultyRequest.DisplayName; var updateDifficultyResponse = await difficultiesRepository .Update((Difficulty)response.Object); if (updateDifficultyResponse.Success) { result.Success = updateDifficultyResponse.Success; result.Message = DifficultiesMessages.DifficultyUpdatedMessage; return(result); } else if (!updateDifficultyResponse.Success && updateDifficultyResponse.Exception != null) { result.Success = updateDifficultyResponse.Success; result.Message = updateDifficultyResponse.Exception.Message; return(result); } else { result.Success = false; result.Message = DifficultiesMessages.DifficultyNotUpdatedMessage; return(result); } } else if (!response.Success && response.Exception != null) { result.Success = response.Success; result.Message = response.Exception.Message; return(result); } else { result.Success = false; result.Message = DifficultiesMessages.DifficultyNotFoundMessage; return(result); } } catch (Exception exp) { result.Success = false; result.Message = exp.Message; return(result); } }