private void TickUpTest(RampDuration d, float elapsed, float current) { float progress = elapsed / (current / 2); Assert.AreEqual(progress, d.FirstHalfProgress); Assert.AreEqual(0, d.SecondHalfProgress); Assert.IsTrue(d.InFirstHalf); Assert.IsFalse(d.FirstHalfFinished); Assert.AreEqual(current, d.Current); Assert.AreEqual(progress, d.TotalProgress); Assert.IsTrue(d.InFirstHalfTotal); Assert.IsFalse(d.Finished); Assert.AreEqual(TotalTime - elapsed, d.TimeRemaining, D); Assert.AreEqual(FirstHalfTime - elapsed, d.TimeRemainingInHalf); Assert.AreEqual(elapsed, d.Elapsed); Assert.AreEqual(elapsed, d.TotalElapsed); Assert.AreEqual(progress, d.Progress); Assert.AreEqual(0, d.HoldingProgress); Assert.AreEqual(0, d.HoldingElapsed); // constant Assert.AreEqual(TimeUp, d.TimeUp); Assert.AreEqual(TimeDown, d.TimeDown); Assert.AreEqual(new FloatRange(Start, End), d.Range); Assert.AreEqual(Start, d.Minimum); Assert.AreEqual(End, d.Maximum); Assert.AreEqual(Hold, d.Hold); Assert.IsTrue(d.RampUp); Assert.IsTrue(d.RampDown); Assert.IsInstanceOfType(d.Easing, typeof(LinearEasing)); }
public void DefaultCtor() { var d = new RampDuration(); Assert.AreEqual(0, d.FirstHalfProgress); Assert.AreEqual(0, d.SecondHalfProgress); Assert.IsTrue(d.InFirstHalf); Assert.IsFalse(d.FirstHalfFinished); Assert.AreEqual(0, d.TotalProgress); Assert.IsTrue(d.InFirstHalfTotal); Assert.IsFalse(d.Finished); Assert.AreEqual(2, d.TimeRemaining); Assert.AreEqual(1, d.TimeRemainingInHalf); Assert.AreEqual(1, d.Current); Assert.AreEqual(1, d.TimeUp); Assert.AreEqual(1, d.TimeDown); Assert.AreEqual(new FloatRange(1, 1), d.Range); Assert.AreEqual(1, d.Minimum); Assert.AreEqual(1, d.Maximum); Assert.AreEqual(0, d.Hold); Assert.IsTrue(d.RampUp); Assert.IsTrue(d.RampDown); Assert.IsInstanceOfType(d.Easing, typeof(LinearEasing)); Assert.AreEqual(0, d.Elapsed); Assert.AreEqual(0, d.TotalElapsed); Assert.AreEqual(0, d.Progress); Assert.AreEqual(1, d.HoldingProgress); Assert.AreEqual(0, d.HoldingElapsed); }
public void Tick() { var d = new RampDuration(Start, End, TimeUp, TimeDown, Hold); TickUpTest(d, 0, Start); // 0, Start, FirstHalfTime, TotalTime); d.Tick(0.1f); TickUpTest(d, 0.1f, Start); d.Tick(0.1f); TickUpTest(d, 0.2f, Start); }