public void SaveToDatabaseTest() { using (var db = new DatabaseSetup(Utili.GetCurrentMethodAndClass())) { ObservableCollection <TraitTag> traitTags = db.LoadTraitTags(); var timeprofiles = db.LoadTimeBasedProfiles(); var realDevices = db.LoadRealDevices(out var deviceCategories, out var loadtypes, timeprofiles); var locations = db.LoadLocations(realDevices, deviceCategories, loadtypes); db.LoadTransportation(locations, out var transportationDeviceSets, out var travelRouteSets, out var _, out var _, loadtypes, out var chargingStationSets); db.LoadHouseholdsAndHouses(out var modularHouseholds, out var houses, out var timeLimits, traitTags, chargingStationSets, travelRouteSets, transportationDeviceSets); var settlements = new ObservableCollection <Settlement>(); var geoloc = db.LoadGeographicLocations(out _, timeLimits); var temperaturProfiles = db.LoadTemperatureProfiles(); Settlement.LoadFromDatabase(settlements, db.ConnectionString, temperaturProfiles, geoloc, modularHouseholds, houses, false); settlements.Clear(); db.ClearTable(Settlement.TableName); db.ClearTable(SettlementHH.TableName); JsonCalcSpecification jcs = JsonCalcSpecification.MakeDefaultsForTesting(); jcs.EnergyIntensityType = EnergyIntensityType.EnergySaving; var se = new Settlement("blub", null, "blub", "fdasdf", "blub", "blub", "asdf", db.ConnectionString, geoloc[0], temperaturProfiles[0], "Testing", CreationType.ManuallyCreated, Guid.NewGuid().ToStrGuid(), jcs); se.SaveToDB(); se.AddHousehold(modularHouseholds[0], 10); Settlement.LoadFromDatabase(settlements, db.ConnectionString, temperaturProfiles, geoloc, modularHouseholds, houses, false); (settlements.Count).Should().Be(1); (settlements[0].Households.Count).Should().Be(1); (geoloc[0]).Should().Be(settlements[0].GeographicLocation); (temperaturProfiles[0]).Should().Be(settlements[0].TemperatureProfile); (EnergyIntensityType.EnergySaving).Should().Be(settlements[0].EnergyIntensityType); db.Cleanup(); } }