/* SettingsRepositoryTest.cs * part of zaaReloaded2 * * Copyright 2015 Daniel Kraus * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ using System; using System.Collections.Generic; using System.Linq; using System.Text; using NUnit.Framework; using zaaReloaded2.Controller; namespace Tests.Controller { [TestFixture] class SettingsRepositoryTest { SettingsRepository _savedSettings; [SetUp] public void SetUp() { _savedSettings = zaaReloaded2.Properties.Settings.Default.SettingsRepository; } [TearDown] public void TearDown() { zaaReloaded2.Properties.Settings.Default.SettingsRepository = _savedSettings; zaaReloaded2.Properties.Settings.Default.Save(); } [Test] public void PersistSettingsRespository() { SettingsRepository sr = new SettingsRepository(); Settings s = new Settings(); string testName = "test"; s.Name = testName; sr.SettingsList.Add(s); sr.Store(); sr = null; sr = SettingsRepository.Load(); Assert.AreEqual(1, sr.SettingsList.Count); Assert.AreEqual(testName, sr.SettingsList[0].Name); } [Test] public void CreateDefaultSettings() { SettingsRepository sr = new SettingsRepository(); sr.SettingsList.Add(new Settings("test1", null)); sr.SettingsList.Add(new Settings("test2", null)); sr.SettingsList.Add(new Settings("test3", null)); sr.ResetDefault(); // Assert that there are now only the 2 default settings Assert.AreEqual(2, sr.SettingsList.Count); Assert.AreEqual( zaaReloaded2.Properties.Settings.Default.SettingsNameWard, sr.SettingsList[0].Name, "Settings for ward expected as #1 (index 0) in list"); Assert.AreEqual( zaaReloaded2.Properties.Settings.Default.SettingsNameClinic, sr.SettingsList[1].Name, "Settings for outpatient clinic expected as #2 (index 1) in list"); } } }