public void ModelValidation_RepetitionTempo_CannotBeNull() { // Arrange var postDto = new PostActivationDto { RepetitionTempo = null }; // Act var modelValidation = AspHelpers.ValidateDtoProperty(postDto, nameof(postDto.RepetitionTempo)); // Assert modelValidation.IsValid.ShouldBeFalse(); modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.RepetitionTempo)} field is required"); }
public void ModelValidation_MuscleId_CannotBeNullOrWhitespace(string muscleId) { // Arrange var postDto = new PostActivationDto { MuscleId = muscleId }; // Act var modelValidation = AspHelpers.ValidateDtoProperty(postDto, nameof(postDto.MuscleId)); // Assert modelValidation.IsValid.ShouldBeFalse(); modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.MuscleId)} field is required"); }
public async Task <IActionResult> PostOneAsync([FromBody] PostActivationDto activationDto) { if (!ModelState.IsValid) { return(BadRequest(ModelState.Values)); } var postedActivation = await _activationsService.CreateOneAsync(activationDto.ToActivation()); if (postedActivation == null) { return(BadRequest()); } return(StatusCode(201, postedActivation)); }
public void ModelValidation_RangeOfMotion_MustBeBetween0And100(double value) { // Arrange var postDto = new PostActivationDto { RangeOfMotion = value }; // Act var modelValidation = AspHelpers.ValidateDtoProperty(postDto, nameof(postDto.RangeOfMotion)); // Assert modelValidation.IsValid.ShouldBeFalse(); modelValidation.Results.Count.ShouldBe(1); modelValidation.Results.First().ErrorMessage.ShouldContain("0"); modelValidation.Results.First().ErrorMessage.ShouldContain("100"); }
public async Task <IActionResult> PostActivationToExercise(string exerciseId, [FromBody] PostActivationDto activationDto) { if (!ModelState.IsValid) { return(BadRequest(ModelState.Values)); } var postedActivation = await _exercisesService.CreateActivation(exerciseId, activationDto.ToActivation()); if (postedActivation == null) { return(NotFound()); } return(StatusCode(201, postedActivation)); }