Пример #1
0
        public void NextValue_Test()
        {
            var movingAverage = new MovingAverage(0);

            Assert.AreEqual(1, movingAverage.NextValue(1));
            Assert.AreEqual(2, movingAverage.NextValue(3));
        }
Пример #2
0
        public void WithDefaultWindowSize_Test()
        {
            var movingAverage = new MovingAverage(0);

            movingAverage.NextValue(1);
            movingAverage.NextValue(1);
            movingAverage.NextValue(1);
            movingAverage.NextValue(1);
            movingAverage.NextValue(1);

            Assert.AreEqual(1, movingAverage.Sum);
        }
Пример #3
0
        public void Reset_Test()
        {
            var movingAverage = new MovingAverage(0);

            movingAverage.NextValue(1);
            movingAverage.Reset();

            Assert.AreEqual(0, movingAverage.Sum);
        }
Пример #4
0
        public static long CalculateAverageUploadSpeed(long sent, TimeSpan duration, MovingAverage movingAverage)
        {
            if (movingAverage == null)
            {
                throw new ArgumentNullException("movingAverage");
            }
            if (duration.Ticks == 0)
            {
                return 0;
            }
            long average = movingAverage.NextValue(duration.Ticks);
            TimeSpan timeSpan = new TimeSpan(average);

            double result = 100 / timeSpan.TotalMilliseconds;
            double bandwidth = result * sent;

            return (long) bandwidth;
        }
Пример #5
0
        public void Moving_Test()
        {
            var movingAverage = new MovingAverage(0);

            movingAverage.NextValue(1); // Will be removed
            movingAverage.NextValue(2);
            movingAverage.NextValue(3);
            movingAverage.NextValue(4);
            movingAverage.NextValue(5);
            movingAverage.NextValue(6);

            Assert.AreEqual(4, movingAverage.Sum);
        }