public void HolidayProbabilitesCalculateTest() { using (var db = new DatabaseSetup(Utili.GetCurrentMethodAndClass())) { // test the normal loading var holidays = new ObservableCollection <Holiday>(); Holiday.LoadFromDatabase(holidays, db.ConnectionString, false); // delete everything and check holidays.Clear(); db.ClearTable(Holiday.TableName); db.ClearTable(HolidayDate.TableName); db.ClearTable(HolidayProbabilities.TableName); Holiday.LoadFromDatabase(holidays, db.ConnectionString, false); (holidays.Count).Should().Be(0); // add one and load again var hd = new Holiday("my holiday", "blub", db.ConnectionString, Guid.NewGuid().ToStrGuid()); hd.SaveToDB(); hd.ProbMonday.Tuesday = 100; hd.ProbMonday.Wednesday = 0; var holiday = new DateTime(2014, 2, 17); hd.AddNewDate(holiday); hd.SaveToDB(); var r = new Random(1); var dts = hd.GetListOfWorkFreeDates(r, "test"); (dts.Count).Should().Be(2); Assert.True(dts.ContainsKey(holiday)); Assert.True(dts.ContainsKey(holiday.AddDays(1))); db.Cleanup(); } }