public void AddTest() { Sequence seq = new Sequence () { Pin = new DPin () { Name = "Pin of Awesome", Number = 13, PlotColor = GUIHelper.ColorHelper.SystemColorToGdkColor (System.Drawing.Color.Yellow), State = DPinState.HIGH }, Name = "Sequence of Awesome", Repetitions = 3, }; seq.AddSequenceOperation (new SequenceOperation () { State = DPinState.HIGH, Duration = TimeSpan.FromSeconds (30) }); Assert.AreEqual (1, seq.Chain.Count); Assert.AreEqual (0, seq.Cycle); seq.Next (); Assert.AreEqual (1, seq.Cycle); seq.Next (); Assert.AreEqual (2, seq.Cycle); seq.Next (); Assert.AreEqual (3, seq.Cycle); seq.Reset (); Assert.AreEqual (0, seq.Cycle); }
public void GetCurrentStateTest() { Sequence seq = new Sequence () { Pin = new DPin () { Name = "Pin of Awesome", Number = 13, PlotColor = GUIHelper.ColorHelper.SystemColorToGdkColor (System.Drawing.Color.Yellow), State = DPinState.HIGH }, Name = "Sequence of Awesome", Repetitions = 3, }; seq.AddSequenceOperation (new SequenceOperation () { State = DPinState.HIGH, Duration = TimeSpan.FromMilliseconds (10) }); seq.AddSequenceOperation (new SequenceOperation () { State = DPinState.LOW, Duration = TimeSpan.FromMilliseconds (10) }); Assert.AreEqual (2, seq.Chain.Count); Assert.AreEqual (0, seq.Chain [0].Moment.TotalMilliseconds); Assert.AreEqual (10, seq.Chain [1].Moment.TotalMilliseconds); Assert.AreEqual (DPinState.HIGH, seq.GetCurrentState (9)); Assert.AreEqual (DPinState.LOW, seq.GetCurrentState (10)); Assert.AreEqual (DPinState.LOW, seq.GetCurrentState (19)); Assert.AreEqual (DPinState.HIGH, seq.GetCurrentState (20)); Assert.AreEqual (DPinState.HIGH, seq.GetCurrentState (29)); Assert.AreEqual (DPinState.LOW, seq.GetCurrentState (30)); Assert.AreEqual (DPinState.LOW, seq.GetCurrentState (60)); Assert.AreEqual (DPinState.LOW, seq.GetCurrentState (61)); seq.Reset (); }