public async Task Update__Admin_Or_Moderator_Can_Update_Exercise() { await LogInAs("*****@*****.**"); Exercise createdExercise = await CreateExercise(); UpdateExerciseRequest exerciseRequest = Factory.Exercise.UpdateExerciseRequest(); string updateEndpoint = ApiRoutes.Exercise.Update.Replace("{exerciseId}", createdExercise.Id.ToString()); var response = await Client.PutAsJsonAsync(updateEndpoint, exerciseRequest); response.StatusCode.Should().Be(HttpStatusCode.OK); var updatedExample = await Context.Exercise .AsNoTracking().FirstOrDefaultAsync(x => x.Id == createdExercise.Id); updatedExample.Id.Should().Be(createdExercise.Id); updatedExample.Name.Should().Be(exerciseRequest.Name); updatedExample.Description.Should().Be(exerciseRequest.Description); updatedExample.Powtorzenia.Should().Be(exerciseRequest.Powtorzenia); updatedExample.Serie.Should().Be(exerciseRequest.Serie); updatedExample.Obciazenie.Should().Be(exerciseRequest.Obciazenie); updatedExample.Czas.Should().Be(exerciseRequest.Czas); updatedExample.Dystans.Should().Be(exerciseRequest.Dystans); int count = await Context.Exercise.AsNoTracking().CountAsync(); count.Should().Be(1); await LogInAs("*****@*****.**"); response = await Client.PutAsJsonAsync(updateEndpoint, exerciseRequest); response.StatusCode.Should().Be(HttpStatusCode.OK); }
public async Task <IActionResult> UpdateExercise(UpdateExerciseRequest updateExerciseRequest) { await _ownedAuthService.OwnsAsync <WorkoutExercise>(updateExerciseRequest.Id, User.GetUserId()); await _exerciseService.UpdateExerciseAsync(updateExerciseRequest); return(NoContent()); }
public async Task UpdateExerciseAsync(UpdateExerciseRequest exerciceUpdateDto) { var exercise = await _exerciseRepo.GetWorkoutExerciseByIdAsync(exerciceUpdateDto.Id); _mapper.Map(exerciceUpdateDto, exercise); _logger.LogInformation($"Updated: {JsonSerializer.Serialize(exercise)}"); await _unitOfWork.SaveAllAsync(); }
public async Task Update__Normal_User_Can_Not_Update_Exercise() { await LogInAs("*****@*****.**"); Exercise createdExercise = await CreateExercise(); UpdateExerciseRequest exerciseRequest = Factory.Exercise.UpdateExerciseRequest(); string updateEndpoint = ApiRoutes.Exercise.Update.Replace("{exerciseId}", createdExercise.Id.ToString()); var response = await Client.PutAsJsonAsync(updateEndpoint, exerciseRequest); response.StatusCode.Should().Be(HttpStatusCode.Forbidden); }
public async Task <IActionResult> Update([FromRoute] int exerciseId, [FromBody] UpdateExerciseRequest request) { var exercise = await _exerciseService.GetExerciseByIdAsync(exerciseId); if (exercise == null) { return(NotFound()); } var updatedExercise = _mapper.Map(request, exercise); var updated = await _exerciseService.UpdateExerciseAsync(updatedExercise); if (!updated) { return(BadRequest(new ErrorResponse("Wystąpił błąd podczas edytowania"))); } return(Ok()); }