public void ModelValidation_PeakEmg_CannotBeNull()
        {
            // Arrange
            var postDto = new PostEmgResultDto();

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

            // Assert
            modelValidation.IsValid.ShouldBeFalse();
            modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.PeakEmg)} field is required");
        }
        public void ModelValidation_PeakEmg_CannotBeLessThanZero()
        {
            // Arrange
            var postDto = new PostEmgResultDto {
                PeakEmg = -1
            };

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

            // Assert
            modelValidation.IsValid.ShouldBeFalse();
            modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.PeakEmg)} must be between 0 and");
        }
コード例 #3
0
        public void ModelValidation_RequiresShortName_WhenShortNameIsNullOrWhitespace(string shortName)
        {
            // Arrange
            var postDto = new PostExerciseDto {
                ShortName = shortName
            };

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

            // Assert
            modelValidation.IsValid.ShouldBeFalse();
            modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.ShortName)} field is required");
        }
        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");
        }
コード例 #6
0
        public void ModelValidation_RequiresMaxLenghtOf30_ForLongNameProperty()
        {
            // Arrange
            var postDto = new PostExerciseDto {
                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'");
        }
コード例 #7
0
        public void ModelValidation_ConcentricDuration_CannotBeLessThanZero()
        {
            // Arrange
            var postDto = new PostRepetitionTempoDto {
                ConcentricDuration = -1
            };

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

            // Assert
            modelValidation.IsValid.ShouldBeFalse();
            modelValidation.Results.Count.ShouldBe(1);
            modelValidation.Results.First().ErrorMessage.ShouldContain($"{nameof(postDto.ConcentricDuration)} must be between 0 and");
        }
        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");
        }