Example #1
0
            public void Custom_directory_must_exist_when_it_is_not_null_or_empty(ChangeLogConfiguration.TemplateName template)
            {
                // ARRANGE
                var config = ChangeLogConfigurationLoader.GetDefaultConfiguration();

                var customDirectoryProperty = config.Template.GetType().GetProperty(template.ToString());
                var templateSettings        = (ChangeLogConfiguration.TemplateSettings)customDirectoryProperty !.GetValue(config.Template) !;

                templateSettings.CustomDirectory = "/Some-Directory";

                var sut = new ConfigurationValidator();

                // ACT
                var result = sut.Validate(config);

                // ASSERT
                Assert.False(result.IsValid);
                Assert.Collection(result.Errors,
                                  error =>
                {
                    Assert.Contains("'Template Custom Directory'", error.ErrorMessage);
                    Assert.Contains("'/Some-Directory'", error.ErrorMessage);
                }
                                  );
            }
Example #2
0
            public void Custom_directory_is_valid_when_directory_exists(ChangeLogConfiguration.TemplateName template)
            {
                // ARRANGE
                using var temporaryDirectory = new TemporaryDirectory();

                var config = ChangeLogConfigurationLoader.GetDefaultConfiguration();

                var customDirectoryProperty = config.Template.GetType().GetProperty(template.ToString());
                var templateSettings        = (ChangeLogConfiguration.TemplateSettings)customDirectoryProperty !.GetValue(config.Template) !;

                templateSettings.CustomDirectory = temporaryDirectory;

                var sut = new ConfigurationValidator();

                // ACT
                var result = sut.Validate(config);

                // ASSERT
                Assert.True(result.IsValid);
                Assert.Empty(result.Errors);
            }
Example #3
0
            public void Custom_directory_can_be_null_or_empty(
                ChangeLogConfiguration.TemplateName template,
                [CombinatorialValues(null, "")] string customDirectory)
            {
                // ARRANGE
                var config = ChangeLogConfigurationLoader.GetDefaultConfiguration();

                var customDirectoryProperty = config.Template.GetType().GetProperty(template.ToString());
                var templateSettings        = (ChangeLogConfiguration.TemplateSettings)customDirectoryProperty !.GetValue(config.Template) !;

                templateSettings.CustomDirectory = customDirectory;

                var sut = new ConfigurationValidator();

                // ACT
                var result = sut.Validate(config);

                // ASSERT
                Assert.True(result.IsValid);
                Assert.Empty(result.Errors);
            }
Example #4
0
            public void Custom_directory_must_not_be_whitespace(
                ChangeLogConfiguration.TemplateName template,
                [CombinatorialValues("\t", " ")] string customDirectory)
            {
                // ARRANGE
                var config = ChangeLogConfigurationLoader.GetDefaultConfiguration();

                var customDirectoryProperty = config.Template.GetType().GetProperty(template.ToString());
                var templateSettings        = (ChangeLogConfiguration.TemplateSettings)customDirectoryProperty !.GetValue(config.Template) !;

                templateSettings.CustomDirectory = customDirectory;


                var sut = new ConfigurationValidator();

                // ACT
                var result = sut.Validate(config);

                // ASSERT
                Assert.False(result.IsValid);
                Assert.Collection(result.Errors,
                                  error => Assert.Contains("'Template Custom Directory'", error.ErrorMessage)
                                  );
            }