public void RouteIdShouldReturnValidationResultWhenIdIsNotValid()
        {
            // Arrange
            var requestComponentValidator = new RequestComponentValidator();
            var id = "invalid-id";

            // Act
            var result = requestComponentValidator.RouteId(id);

            // Assert
            result.Should().BeOfType <ValidationResult>();
        }
        public void RouteIdShouldReturnNullWhenIdIsValid()
        {
            // Arrange
            var requestComponentValidator = new RequestComponentValidator();
            var id = Guid.NewGuid().ToString();

            // Act
            var result = requestComponentValidator.RouteId(id);

            // Assert
            result.Should().BeNull();
        }
        public void FileMediaExtensionShouldSucceedOnUppercaseExtension()
        {
            //Arrange
            var requestValidator = new RequestComponentValidator();
            var extension        = ".JPG";

            //Act
            var result = requestValidator.FileMediaExtension(extension);

            //Assert
            result.Should().BeNull();
        }
        public void FileMediaExtensionShoudFailWhenExtensionIsUnsuported()
        {
            //Arrange
            var requestValidator = new RequestComponentValidator();
            var extension        = ".apk";
            var expectedFailure  = new Failure
            {
                Code    = Consts.Failure.Detail.Code.InvalidFileExtension,
                Message = RequestFailures.InvalidFileExtension,
                Target  = Consts.Failure.Detail.Target.Extension
            };

            //Act
            var result = requestValidator.FileMediaExtension(extension);

            //Assert
            result.Should().BeOfType <ValidationResult>();
            result.Errors.Should().ContainEquivalentOf(expectedFailure);
        }