public DateProfileDataPoint AddDataPoint(DateTime time, double value) { DateProfileDataPoint dp = _dbp.AddNewDatePoint(time, value); _dbp.SaveToDB(); return(dp); }
public void TimeLimitArrayTestDateProfileTest() { using (var db = new DatabaseSetup(Utili.GetCurrentMethodAndClass())) { db.ClearTable(TimeLimit.TableName); db.ClearTable(TimeLimitEntry.TableName); // test if night + day is always var dateBasedProfile = new DateBasedProfile("blub", "bla", db.ConnectionString, Guid.NewGuid().ToStrGuid()); dateBasedProfile.SaveToDB(); dateBasedProfile.AddNewDatePoint(new DateTime(2014, 1, 1), 100); dateBasedProfile.AddNewDatePoint(new DateTime(2014, 1, 3), 0); dateBasedProfile.SaveToDB(); var start = new DateTime(1900, 1, 1, 0, 0, 0); var end = new DateTime(1900, 1, 1, 1, 1, 1); var dt = new TimeLimit("blub", db.ConnectionString, Guid.NewGuid().ToStrGuid(), 1); var temp = new TemperatureProfile("blub", 1, "bla", string.Empty, Guid.NewGuid().ToStrGuid()); var enddate = new DateTime(1900, 1, 2, 0, 0, 0); temp.AddTemperature(start, 0, 1, true, false); temp.AddTemperature(enddate, 10, 1, true, false); var dateBasedProfiles = new ObservableCollection <DateBasedProfile>(); dt.AddTimeLimitEntry(null, start, end, PermissionMode.ControlledByDateProfile, 1, 1, true, true, true, true, true, true, true, 1, 1, 1, 1, 1, 1, 1, true, false, AnyAllTimeLimitCondition.Any, start, end, dateBasedProfile.ID, 150, 50, false, false, true, false, 5, false, dateBasedProfiles, 0, 0, 0); dateBasedProfiles.Add(dateBasedProfile); var geoloc = new GeographicLocation(db.ConnectionString, null, Guid.NewGuid().ToStrGuid()); var r = new Random(); var vacationTimeFrames = new List <VacationTimeframe>(); var br = dt.TimeLimitEntries[0].GetOneYearHourArray(temp, geoloc, r, vacationTimeFrames, "test", out _); for (var i = 0; i < br.Count; i++) { if (i < 48) { (br[i]).Should().Be(true); } else { (br[i]).Should().Be(false); } } db.Cleanup(); } }
public void DateBasedProfileSaveAndRestore() { using (var db = new DatabaseSetup(Utili.GetCurrentMethodAndClass())) { db.ClearTable(DateBasedProfile.TableName); db.ClearTable(DateProfileDataPoint.TableName); var profiles = new ObservableCollection <DateBasedProfile>(); DateBasedProfile.LoadFromDatabase(profiles, db.ConnectionString, false); profiles.Count.Should().Be(0); var dbp = new DateBasedProfile("tempprofil1", "desc1", db.ConnectionString, Guid.NewGuid().ToStrGuid()); dbp.SaveToDB(); dbp.AddNewDatePoint(new DateTime(2014, 1, 1), 15); dbp.AddNewDatePoint(new DateTime(2014, 2, 1), 15); dbp.SaveToDB(); DateBasedProfile.LoadFromDatabase(profiles, db.ConnectionString, false); profiles.Count.Should().Be(1); profiles[0].Datapoints.Count.Should().Be(2); profiles[0].DeleteDatePoint(profiles[0].Datapoints[0]); profiles[0].Datapoints.Count.Should().Be(1); db.Cleanup(); } }