public void FrameTime_is_summed_in_summary_stats() { var netStats = new NetStats(5); netStats.SetFrameTime(1); netStats.FinishFrame(); netStats.SetFrameTime(0.5f); netStats.FinishFrame(); netStats.SetFrameTime(0.25f); netStats.FinishFrame(); var(_, singleFrameTime) = netStats.GetSummary(MessageTypeUnion.Update(54), 1, Direction.Incoming); Assert.AreEqual(0.25f, singleFrameTime, float.Epsilon); var(_, twoFrameTime) = netStats.GetSummary(MessageTypeUnion.Update(54), 2, Direction.Incoming); Assert.AreEqual(0.75f, twoFrameTime, float.Epsilon); var(_, threeFrameTime) = netStats.GetSummary(MessageTypeUnion.Update(54), 3, Direction.Incoming); Assert.AreEqual(1.75f, threeFrameTime, float.Epsilon); }
public void FrameTime_summation_wraps_correctly() { var netStats = new NetStats(5); for (var i = 1; i <= 5; i++) { netStats.SetFrameTime(i); netStats.FinishFrame(); } // After the for loop: // FrameTime buffer - [5, 4, 3, 2, 1] // nextInsertIndex ^ var(_, threeFrameTime) = netStats.GetSummary(MessageTypeUnion.Update(54), 3, Direction.Incoming); Assert.AreEqual(5 + 4 + 3, threeFrameTime, float.Epsilon); }