public void should_be_able_to_detect_missing_values_for_template() { //ARRANGE var values = new Dictionary<string, string> { {"Val1","XX"} }; const string pattern = @"<element attr=""${Val1}"" >${Val2}</element>"; var tansformer = new DollarPlaceholderTransformer(); //ACT & ASSERT var exception = Assert.Throws<MissingValuesException>(() => tansformer.Transform(pattern, values)); Assert.AreEqual(1, exception.MissingValuesNames.Count); Assert.AreEqual("Val2", exception.MissingValuesNames.First()); }
public void should_be_able_to_transform_pattern_multiple_occurrences_of_the_same_placeholder() { //ARRANGE var values = new Dictionary<string, string> { {"Val1","XX"} }; const string pattern = @"<element attr=""${Val1}"" >${Val1}</element>"; var tansformer = new DollarPlaceholderTransformer(); //ACT var result = tansformer.Transform(pattern, values); //ASSERT Assert.IsNotNullOrEmpty(result); Assert.AreEqual(@"<element attr=""XX"" >XX</element>", result); }
public void should_be_able_to_transform_pattern_using_many_values() { //ARRANGE var values = new Dictionary<string, string> { {"Val1","XX"}, {"Val2","YY"} }; const string pattern = @"<element attr=""${Val1}"" >${Val2}</element>"; var tansformer = new DollarPlaceholderTransformer(); //ACT var result = tansformer.Transform(pattern, values); //ASSERT Assert.IsNotNullOrEmpty(result); Assert.AreEqual(@"<element attr=""XX"" >YY</element>", result); }