public void ModifiedObjectsAreSerialized_Bug15818() { var settings = new Bug15818Settings2 { Text = "foo", MyObject = new Bug15818Class { Name = "Some Name", Value = 15818 } }; settings.Save(); // Modify the value of the object - bug #15818 settings.Text = "bla"; settings.MyObject.Name = "xyz"; settings.MyObject.Value = -1; settings.Save(); // Verify that the new values got saved var settings2 = new Bug15818Settings2(); Assert.AreEqual("bla", settings2.Text); Assert.IsNotNull(settings2.MyObject); Assert.AreEqual("xyz", settings2.MyObject.Name); Assert.AreEqual(-1, settings2.MyObject.Value); }
public void Reset_FiresPropChangedOnly_Bug15818() { bool propChangedCalled = false; bool settingsLoadedCalled = false; bool settingsSavingCalled = false; var settings = new Bug15818Settings2(); settings.PropertyChanged += (sender, e) => { propChangedCalled = true; }; settings.SettingsLoaded += (sender, e) => { settingsLoadedCalled = true; }; settings.SettingsSaving += (sender, e) => { settingsSavingCalled = true; }; settings.Reset(); Assert.IsTrue(propChangedCalled, "#1"); Assert.IsFalse(settingsLoadedCalled, "#2"); Assert.IsFalse(settingsSavingCalled, "#3"); }
public void CustomClass_Roundtrip() { var settings = new Bug15818Settings2 { Text = "foo", MyObject = new Bug15818Class { Name = "Some Name", Value = 15818 } }; settings.Save(); var settings2 = new Bug15818Settings2(); Assert.AreEqual("foo", settings2.Text); Assert.IsNotNull(settings2.MyObject); Assert.AreEqual("Some Name", settings2.MyObject.Name); Assert.AreEqual(15818, settings2.MyObject.Value); }