public void CanCreateASimpleListOfInterpolatables()
 {
     const string src = "Some string that is #{Replaceable}";
     var s = new Sample { Replaceable = "irreplaceable" };
     var interpolatables = s.InterpolatablesOf(src);
     Assert.IsNotNull(interpolatables);
     Assert.AreEqual(1, interpolatables.Count);
     var interpolatable = interpolatables.First();
     Assert.AreEqual("Replaceable", interpolatable.Item);
     Assert.AreEqual(InterpolatableType.Simple, interpolatable.Type);
     Assert.AreEqual(s, interpolatable.Instance);
     Assert.AreEqual("irreplaceable", interpolatable.Value);
 }
 public void CanCreateASimpleListOfInterpolatablesWithTwoProps()
 {
     const string src = "Some string that is #{Replaceable} and #{AnotherString}";
     var s = new Sample { Replaceable = "irreplaceable", AnotherString = "more" };
     var interpolatables = s.InterpolatablesOf(src);
     Assert.IsNotNull(interpolatables);
     Assert.AreEqual(2, interpolatables.Count);
     var interpolatable1 = interpolatables.First(i => i.Item == "Replaceable");
     Assert.IsNotNull(interpolatable1);
     Assert.AreEqual(InterpolatableType.Simple, interpolatable1.Type);
     Assert.AreEqual(s, interpolatable1.Instance);
     Assert.AreEqual("irreplaceable", interpolatable1.Value);
     var interpolatable2 = interpolatables.First(i => i.Item == "AnotherString");
     Assert.IsNotNull(interpolatable2);
     Assert.AreEqual(InterpolatableType.Simple, interpolatable2.Type);
     Assert.AreEqual(s, interpolatable2.Instance);
     Assert.AreEqual("more", interpolatable2.Value);
 }