public void CloneString() { Property prop = new StringProperty("test", "orange"); AttachEvents(prop); Property prop2 = prop.Clone() as Property; StringProperty sp1 = prop as StringProperty; StringProperty sp2 = prop2 as StringProperty; Assert.AreEqual(sp1.Name, sp2.Name); Assert.AreEqual(sp1.Value, sp2.Value); // Make sure events were not cloned. sp2.Name = "test2"; sp2.Value = "apple"; Assert.AreEqual(EventFlags.None, _eventsFired); }