public void ModelValidation_RequiresLongName_WhenLongNameIsNullOrWhitespace(string longName)
        {
            // Arrange
            var postDto = new PostMuscleDto {
                LongName = longName
            };

            // Act
            var modelValidation = AspHelpers.ValidateDtoProperty(postDto, nameof(postDto.LongName));

            // Assert
            modelValidation.IsValid.ShouldBeFalse();
            modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.LongName)} field is required");
        }
        public void ModelValidation_RequiresMaxLenghtOf30_ForLongNameProperty()
        {
            // Arrange
            var postDto = new PostMuscleDto {
                LongName = new string('a', 61)
            };

            // Act
            var modelValidation = AspHelpers.ValidateDtoProperty(postDto, nameof(postDto.LongName));

            // Assert
            modelValidation.IsValid.ShouldBeFalse();
            modelValidation.Results.Count.ShouldBe(1);
            modelValidation.Results.First().ErrorMessage.ShouldContain("'60'");
        }
コード例 #3
0
        public async Task <IActionResult> PostOneAsync([FromBody] PostMuscleDto muscleDto)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState.Values));
            }

            var postedMuscle = await _musclesService.CreateOneAsync(muscleDto.ToMuscle());

            if (postedMuscle == null)
            {
                return(BadRequest());
            }

            return(StatusCode(201, postedMuscle));
        }