public void SettingManager_With_TrackableObjects() { // arrange var settingsManager = new SettingsManager(SettingsTestsDirectory); var settings = new BuildServerSettings { User = new User { FirstName = "Alexander", LastName = "Beletsky" }, Jobs = new List<Job> { new Job { Id = 0, Configuration = "Git", Name = "proj" } }, }; settingsManager.SaveSettings(settings); // act using (var trackableSettingsManager = new AutoSaveSettingsManager(settingsManager)) { var restoredSettings = trackableSettingsManager.ReadSettings<BuildServerSettings>(); restoredSettings.User.FirstName = "John"; restoredSettings.User.LastName = "Doe"; } // post var changedSettings = settingsManager.ReadSettings<BuildServerSettings>(); Assert.That(changedSettings.User.FirstName, Is.EqualTo("John")); Assert.That(changedSettings.User.LastName, Is.EqualTo("Doe")); }
public void SettingsManager_SaveSettings() { // arrange var settingsManager = new SettingsManager(SettingsTestsDirectory); var settings = new BuildServerSettings { User = new User { FirstName = "Alexander", LastName = "Beletsky" }, Jobs = new List<Job> { new Job { Id = 0, Configuration = "Git", Name = "proj" } }, }; // act settingsManager.SaveSettings(settings); // post var restoredSettings = settingsManager.ReadSettings<BuildServerSettings>(); Assert.That(Comparer.Compare(settings, restoredSettings), Is.True); }