public void TestIsChanged() { Utils.ProjectDummy p = new Utils.ProjectDummy(); Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.Dashboard = new Utils.DashboardDummy(); Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.Timeline.Add(new TimelineEvent()); Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.EventTypes.Add(new EventType()); Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.EventTypes = null; Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.Playlists.Add(new Playlist()); Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.Periods.Add(new Period()); Assert.IsTrue(p.IsChanged); p.IsChanged = false; p.Timers.Add(new Timer()); Assert.IsTrue(p.IsChanged); p.IsChanged = false; }
public void UpdateEventTypesAndTimers_NewProjectWithEventTypesAndTimers_ProjectWithoutEventInDashboardAndTimeline() { ///Arrange var targetProject = new Utils.ProjectDummy(); targetProject.Timers.Clear(); targetProject.EventTypes.Clear(); AnalysisEventButton button = targetProject.Dashboard.List.OfType <AnalysisEventButton> ().First(); targetProject.Timeline.Add(new TimelineEvent { EventType = button.EventType }); targetProject.UpdateEventTypesAndTimers(); ///Act targetProject.Dashboard.List.Remove(button); targetProject.Timeline.Clear(); targetProject.UpdateEventTypesAndTimers(); ///Assert Assert.IsNotNull(targetProject); Assert.AreEqual(1, targetProject.Timers.Count); Assert.AreEqual(4, targetProject.EventTypes.Count); }
public void TestProjectSetInTimelineEvents() { Utils.ProjectDummy p = CreateProject(); TimelineEvent evt = new TimelineEvent(); p.AddEvent(evt); Utils.ProjectDummy newp = Utils.SerializeDeserialize(p); Assert.AreEqual(newp, newp.Timeline [0].Project); }
public void TestClone_IsBindableBase_CloneProperty() { // Arrange Utils.DashboardDummy dashboard = new Utils.DashboardDummy(); Utils.ProjectDummy p = new Utils.ProjectDummy(); // Action p.Dashboard = dashboard.Clone(); // Assert Assert.IsTrue(p.Dashboard.IsChanged); }
public void TestSerialization() { Utils.ProjectDummy p = new Utils.ProjectDummy(); Utils.CheckSerialization(p); p = CreateProject(); Utils.CheckSerialization(p); p.AddEvent(new TimelineEvent()); Utils.CheckSerialization(p); Utils.ProjectDummy newp = Utils.SerializeDeserialize(p); Assert.AreEqual(newp.CompareTo(p), 0); Assert.AreEqual(newp.Timeline.Count, p.Timeline.Count); }
public void Equals_NewProject_SerializedAndDeserializedProjectAreEqual() { ///Arrange /// var targetProject = Utils.CreateProject() as Utils.ProjectDummy;; var anotherProject = new Utils.ProjectDummy(); ///Act var serializedAndDeserializedProject = Utils.SerializeDeserialize(targetProject); ///Assert Assert.IsTrue(targetProject.Equals(serializedAndDeserializedProject)); Assert.IsFalse(targetProject.Equals(anotherProject)); Assert.IsFalse(serializedAndDeserializedProject.Equals(anotherProject)); }
public void UpdateEventTypesAndTimers_NewProjectWithoutEvenTypesAndTimers_ProjectWithEventTypesAndTimersUpdated() { ///Arrange var targetProject = new Utils.ProjectDummy(); targetProject.Timers.Clear(); targetProject.EventTypes.Clear(); ///Act targetProject.UpdateEventTypesAndTimers(); ///Assert Assert.AreEqual(1, targetProject.Timers.Count); Assert.AreEqual(5, targetProject.EventTypes.Count); }
public void UpdateEventTypesAndTimers_ProjectWithEventTypesAndTimersUpdated_ProjectWithoutCategoryButtonUpdated() { ///Arrange var targetProject = new Utils.ProjectDummy(); targetProject.UpdateEventTypesAndTimers(); ///Act targetProject.Dashboard.List.Remove(targetProject.Dashboard.List.OfType <AnalysisEventButton> ().First()); targetProject.UpdateEventTypesAndTimers(); ///Assert Assert.IsNotNull(targetProject); Assert.AreEqual(1, targetProject.Timers.Count); Assert.AreEqual(4, targetProject.EventTypes.Count); }
public void TestRemoveEvents() { TimelineEvent p1, p2, p3; List <TimelineEvent> plays = new List <TimelineEvent> (); Utils.ProjectDummy p = CreateProject(false); p1 = new TimelineEvent(); p2 = new TimelineEvent(); p3 = new TimelineEvent(); p.AddEvent(p1); p.AddEvent(p2); p.AddEvent(p3); plays.Add(p1); plays.Add(p2); p.RemoveEvents(plays); Assert.AreEqual(p.Timeline.Count, 1); Assert.AreEqual(p.Timeline [0], p3); }
Utils.ProjectDummy CreateProject(bool fill = true) { Utils.ProjectDummy p = new Utils.ProjectDummy(); p.UpdateEventTypesAndTimers(); /* * Requires a dashboard with DefaultTemplate * * if (fill) { * p.AddEvent (p.EventTypes [0], new Time (1000), new Time (2000), null, null); * p.AddEvent (p.EventTypes [0], new Time (1000), new Time (2000), null, null); * p.AddEvent (p.EventTypes [1], new Time (1000), new Time (2000), null, null); * p.AddEvent (p.EventTypes [2], new Time (1000), new Time (2000), null, null); * p.AddEvent (p.EventTypes [2], new Time (1000), new Time (2000), null, null); * p.AddEvent (p.EventTypes [2], new Time (1000), new Time (2000), null, null); * p.AddEvent (p.EventTypes [6], new Time (1000), new Time (2000), null, null); * } */ return(p); }
public void ResyncEvents_MovePeriodsOutsideCurrentOnes_AllEventsAppear() { // Arrange Utils.ProjectDummy p = CreateProject(false); int offset1 = 10000, offset2 = 12000, offset3 = 15000; Period period; List <Period> syncedPeriods; period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(0), Stop = new Time(3000) }); p.Periods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(3001), Stop = new Time(6000) }); p.Periods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(6001), Stop = new Time(6500) }); p.Periods.Add(period); var oldPeriods = p.Periods.Clone(); syncedPeriods = new List <Period> (); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(0 + offset1), Stop = new Time(3000 + offset1) }); syncedPeriods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(3001 + offset2), Stop = new Time(6000 + offset2) }); syncedPeriods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(6001 + offset3), Stop = new Time(6500 + offset3) }); syncedPeriods.Add(period); /* 1st Period */ p.Timeline.Add(new TimelineEvent { EventTime = new Time(0) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(1500) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(3000) }); /* 2nd Period */ p.Timeline.Add(new TimelineEvent { EventTime = new Time(3001) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(4500) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(6000) }); /* 3nd Period */ p.Timeline.Add(new TimelineEvent { EventTime = new Time(6001) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(6200) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(6500) }); IList <TimelineEvent> oldTimeline = p.Timeline.Clone(); p.Periods.Replace(syncedPeriods); // Act p.ResyncEvents(oldPeriods); // Assert Assert.AreEqual(oldTimeline.Count, p.Timeline.Count); Assert.AreEqual(oldTimeline [0].EventTime + offset1, p.Timeline [0].EventTime); Assert.AreEqual(oldTimeline [1].EventTime + offset1, p.Timeline [1].EventTime); Assert.AreEqual(oldTimeline [2].EventTime + offset1, p.Timeline [2].EventTime); Assert.AreEqual(oldTimeline [3].EventTime + offset2, p.Timeline [3].EventTime); Assert.AreEqual(oldTimeline [4].EventTime + offset2, p.Timeline [4].EventTime); Assert.AreEqual(oldTimeline [5].EventTime + offset2, p.Timeline [5].EventTime); Assert.AreEqual(oldTimeline [6].EventTime + offset3, p.Timeline [6].EventTime); Assert.AreEqual(oldTimeline [7].EventTime + offset3, p.Timeline [7].EventTime); Assert.AreEqual(oldTimeline [8].EventTime + offset3, p.Timeline [8].EventTime); }
public void TestResyncEvents() { Utils.ProjectDummy p = CreateProject(false); int offset1 = 100, offset2 = 120, offset3 = 150; Period period; List <Period> syncedPeriods; period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(0), Stop = new Time(3000) }); p.Periods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(3001), Stop = new Time(6000) }); p.Periods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(6001), Stop = new Time(6500) }); p.Periods.Add(period); var oldPeriods = p.Periods.Clone(); /* Test with a list of periods that don't match */ Assert.Throws <IndexOutOfRangeException> ( delegate { p.ResyncEvents(new List <Period> ()); }); syncedPeriods = new List <Period> (); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(0 + offset1), Stop = new Time(3000 + offset1) }); syncedPeriods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(3001 + offset2), Stop = new Time(6000 + offset2) }); syncedPeriods.Add(period); period = new Period(); period.Nodes.Add(new TimeNode { Start = new Time(6001 + offset3), Stop = new Time(6500 + offset3) }); syncedPeriods.Add(period); /* 1st Period */ p.Timeline.Add(new TimelineEvent { EventTime = new Time(0) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(1500) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(3000) }); /* 2nd Period */ p.Timeline.Add(new TimelineEvent { EventTime = new Time(3001) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(4500) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(6000) }); /* 3nd Period */ p.Timeline.Add(new TimelineEvent { EventTime = new Time(6001) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(6200) }); p.Timeline.Add(new TimelineEvent { EventTime = new Time(6500) }); IList <TimelineEvent> oldTimeline = p.Timeline.Clone(); p.Periods.Replace(syncedPeriods); p.ResyncEvents(oldPeriods); Assert.AreEqual(oldTimeline [0].EventTime + offset1, p.Timeline [0].EventTime); Assert.AreEqual(oldTimeline [1].EventTime + offset1, p.Timeline [1].EventTime); Assert.AreEqual(oldTimeline [2].EventTime + offset1, p.Timeline [2].EventTime); Assert.AreEqual(oldTimeline [3].EventTime + offset2, p.Timeline [3].EventTime); Assert.AreEqual(oldTimeline [4].EventTime + offset2, p.Timeline [4].EventTime); Assert.AreEqual(oldTimeline [5].EventTime + offset2, p.Timeline [5].EventTime); Assert.AreEqual(oldTimeline [6].EventTime + offset3, p.Timeline [6].EventTime); Assert.AreEqual(oldTimeline [7].EventTime + offset3, p.Timeline [7].EventTime); Assert.AreEqual(oldTimeline [8].EventTime + offset3, p.Timeline [8].EventTime); }