public void Should_replace_subfiles_in_template(string environment, string setting) { _settingsSubstitutor = new SettingsSubstitutor(environment); //Arrange var settings = new Dictionary <string, string[]> { { "StandardSetting1", new [] { "AAA" } }, { "StandardSetting2", new [] { "BBB" } }, { "SubFileFileName", new [] { "Tests.ExampleTemplates.Subfile." + setting + ".template" } } }; // Only add the 3rd setting when testing environment2 - this demonstrates that missing settings don't matter // when doing sub-template substitutions as only the sub-templates for the current environment are handled. if (environment.Equals("environment2", StringComparison.OrdinalIgnoreCase)) { settings.Add("StandardSetting3", new [] { "CCC" }); } //Act _settingsSubstitutor.CreateSubstitutedDirectory(_templatesFolder, _outputFolder, settings); //Assert var fullEnvironmentFilename = Path.Combine(_outputFolder, environment, "Tests.ExampleTemplates.TemplateWithSubfile.txt"); var subsituted = Id.PowershellExtensions.Helpers.GetFileWithEncoding(fullEnvironmentFilename); Assert.That(subsituted.Contents, Is.StringContaining("StandardSetting2")); Assert.That(subsituted.Contents, Is.StringContaining("BBB")); var outputDir = Path.Combine(_outputFolder, environment); var templates = Directory.GetFiles(outputDir, "*.template"); Assert.That(templates.Length, Is.EqualTo(0)); }
public void Should_replace_subfiles_in_template() { //Arrange var settings = new Dictionary <string, string[]> { { "StandardSetting", new [] { "StandardSettingValue" } }, { "SubFileFileName", new [] { "Tests.ExampleTemplates.Subfile2.txt" } }, { "SecurityMode", new [] { "Transport" } } }; //Act _settingsSubstitutor.CreateSubstitutedDirectory(_templatesFolder, _outputFolder, "test", settings); //Assert var fullEnvironmentFilename = Path.Combine(_outputFolder, "test", "Tests.ExampleTemplates.TemplateWithSubfile.txt"); var subsituted = Id.PowershellExtensions.Helpers.GetFileWithEncoding(fullEnvironmentFilename); Assert.That(subsituted.Contents, Is.StringContaining("<!-- Secure config -->")); Assert.That(subsituted.Contents, Is.StringContaining("StandardSettingValue")); Assert.That(subsituted.Contents, Is.StringContaining("Transport")); }