public void RunTest() { RunningConfig rc = RunningConfig.MakeDefaults(); BusinessProfileOverrideRepository bpoe = new BusinessProfileOverrideRepository(rc); bpoe.GetEntry("blub", "blub", "blub").Should().BeNull(); bpoe.GetEntry("bla", "bla", "bla").Should().NotBeNull(); }
private Profile GetCorrectProfile(BusinessType beBusinessType, double targetEnergy, [NotNull] BusinessEntry be) { var overrideEntry = _repository.GetEntry(be.ComplexName, be.BusinessName, be.Standort); if (overrideEntry != null) { _usedProfileOverrides.Add(overrideEntry); if (overrideEntry.ProfileName.ToLower() == "flat") { return(Profile.MakeConstantProfile(targetEnergy, "Flat", Profile.ProfileResolution.QuarterHour)); } return(_slpProvider.Run(overrideEntry.ProfileName, targetEnergy)); } switch (beBusinessType) { case BusinessType.Büro: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Shop: return(_slpProvider.Run("G4", targetEnergy)); case BusinessType.Werkstatt: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Seniorenheim: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Restaurant: return(_slpProvider.Run("G2", targetEnergy)); case BusinessType.Bäckerei: return(_slpProvider.Run("G5", targetEnergy)); case BusinessType.Industrie: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Sonstiges: return(_slpProvider.Run("G0", targetEnergy)); case BusinessType.Praxis: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Kirche: return(_slpProvider.Run("G6", targetEnergy)); case BusinessType.Schule: return(_slpProvider.Run("G1", targetEnergy)); case BusinessType.Tankstelle: return(_slpProvider.Run("G4", targetEnergy)); case BusinessType.Wasserversorgung: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Brauerei: return(Profile.MakeConstantProfile(targetEnergy, "Flat", Profile.ProfileResolution.QuarterHour)); case BusinessType.Hotel: return(_slpProvider.Run("G0", targetEnergy)); case BusinessType.Museum: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Hallenbad: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Eissport: return(_slpProvider.Run("G3", targetEnergy)); case BusinessType.Mobilfunk: return(Profile.MakeConstantProfile(targetEnergy, "Flat", Profile.ProfileResolution.QuarterHour)); case BusinessType.Unknown: throw new ArgumentOutOfRangeException(nameof(beBusinessType), beBusinessType, null); default: throw new ArgumentOutOfRangeException(nameof(beBusinessType), beBusinessType, null); } }